Code Monkey home page Code Monkey logo

hyperspaceapi's Introduction

HyperspaceAPI

Framerworks e Lingagens Utilizadas

  • Laravel 7.0.2
  • PHP ^7.2

Banco de dados utilizado

  • MySQL 5.7
Configuração de Ambiente

Após clonar o repositório...

  1. Executar o comando "composer install" no diretório api;
  2. renomear ".env.example" para ".env"
    1. Alterar nome do banco de dados para "DB_DATABASE"="hyperspace";
    2. Alterar alterar "DB_USERNAME=''" para seu usuário do banco de dados;
    3. Aleterar "DB_PASSWORD=''" para a senha referente ao usuário do banco de dados;
  3. Executar o comando "php artisan key:gen";
  4. Executar o comando "php artisan migrate:fresh --seed" ( seeders recebidos através de requisições a swapi );
  5. Executar o comando "php artisan serve" para executar o servidor;

Rotas permitidas para requisições

  • Listagem de planetas: '/api/planets/all' (Método GET);

  • Detalhe de planeta por ID: '/api/planets/id/{id}' (Método GET);

  • Detalhe de planeta por NAME: '/api/planets/name/{name}' (Método GET);

  • Listagem de pessoas: '/api/people/all' (Método GET);

  • Detalhe de pessoa por ID: '/api/people/id/{id} (Método GET);

  • Detalhe de pessoa por NAME: '/api/people/name/{name} (Método GET);

  • Listagem de visitas: '/api/visits/list' (Método GET);

  • Ranking de visitas: '/api/visits/ranking' (Método GET);

  • Cadastro de visitas: '/api/visits?people_id=(PARARMETRO)&planet_name=(PARAMETRO)' (Método POST);

Procedimentos para execução de testes

Digite os seguintes comandos para rodar os testes

Os testes de navegador serão executados pelo PHPUnit

PHPUnit
  • ./vendor/bin/phpunit || Para executar todos os testes;

  • ./vendor/bin/phpunit --filter testRanking || Para executar o teste do ranking de visitas;

  • ./vendor/bin/phpunit --filter testVisitsList || Para executar o teste da lista de visitas;

  • ./vendor/bin/phpunit --filter testStoreVists || Para executar o teste de cadastrar uma nova visita;

  • ./vendor/bin/phpunit --filter testPeopleList || Para executar o teste da lista de pessoas;

  • ./vendor/bin/phpunit --filter testPeopleDetailsByName || Para executar o teste dos detalhes das pessoas por nome;

  • ./vendor/bin/phpunit --filter testPeopleDetailsById || Para executar o teste dos detalhes das pessoas por id;

  • ./vendor/bin/phpunit --filter testPlanetsList || Para executar o teste da lista de planetas;

  • ./vendor/bin/phpunit --filter testPlanetDetailsByName || Para executar o teste dos detalhes dos planetas por nome;

  • ./vendor/bin/phpunit --filter testPlanetDetailsById || Para executar o teste dos detalhes dos planetas por id;

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.