Giter Club home page Giter Club logo

aivo-test's Introduction

Test Aivo

Build Status Coverage Status

Retrieve a user profile

###Objective Build a service which retrieves the profile of one facebook user, using the Facebook API Graph.

We expect an API endpoint which we could hit with an facebook id as parameter and the response should be all the possible information about his profile.

###Example:

Request:

GET /profile/facebook/123456

Response:

 STATUS 200
 {
     "id": 123456,
     "firstName": "Juan",
     "lastName": "Perez"
 }

###Conditions

  • The project should be developed using PHP 5.4+
  • If necessary, you can use any web framework of your choice, We recommend SlimPHP
  • You can use the data store solution of your choice if you need one
  • The full project should be correctly revisioned using GIT. That GIT repository should be accesible by us (publicly or privately) on GitHub or BitBucket.
  • You don't need to serve the project to the internet but it should be testeable locally using the php built-in webserver or similar solution with the proper documentation on how to do it
  • Unit Tests are a big plus!
  • All added value you can give to the original idea is highly appreciated
  • Have Fun!

Test solution by Mariano G. Egui

  • The project run in PHP 7.1
  • I used Lumen framework, because it's the micro-framework of Laravel.
  • I didn't use data storage on databases level.
  • The project run in docker in develop environment.
  • I used Functional Tests, because this tests the integration the services with framework context.
  • I add Cache layer in the service to storage API response. Just to reduce time response.

This solution is integrated with TravisCI and Coveralls.io to inform the success and the tests coverage.

Please, is necessary to have

How to check?

Clone the project:

git clone --recursive [email protected]:megui88/aivo-test.git

Go to laradock and run docker-compose

cd aivo-test/laradock
cp env-example env
docker-compose build nginx workspace

Run docker:

docker-compose up -d nginx

Run composer:

docker-compose exec workspace bash

$: composer install

It is necessary you set the API keys in the environment file:

vim .env

Test in localhost:80

aivo-test's People

Contributors

megui88 avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.