Este é um teste para a vaga de desenvolvedor backend júnior na EmCash. A finalidade do teste é criar uma API para o cadastro de triângulos e retângulos, e obter a soma total da área de todos os polígonos cadastrados no sistema.
Siga as instruções abaixo para configurar e executar o projeto em sua máquina.
- Git
- Docker (opcional)
- Composer
- PHP
# Clone o repositório
> git clone https://github.com/Casmei/emcash-polygon.git
# Acesse a pasta do projeto
> cd emcash-polygon
# Crie o arquivo de configuração das variáveis de ambiente (Linux)
> cp .env.example .env
# Crie o arquivo de configuração das variáveis de ambiente (Windows)
> copy .env.example .env
Se você tiver o Docker instalado em sua máquina, pode seguir estes passos:
# Construa os containers
> docker compose up --build
Se você não tiver o Docker instalado, siga estes passos:
# Instale as dependências do projeto com o Composer
> composer install
# Gere a chave de segurança requisitada pelo Laravel
> php artisan key:generate
# Execute as migrações do banco de dados ( Valide nas envs as credenciais de conexão com o banco caso dê erro )
> php artisan migrate
# Inicie o sistema
> php artisan serve
A documentação do projeto é feita utilizando o Swagger. Para acessar a documentação, basta abrir o seguinte URL no seu navegador:
http://127.0.0.1:8000/api/documentation
Verbo Http | Rota | Parâmetros |
---|---|---|
POST | api/triangles |
base, side1, side2 |
POST | api/rectangles |
base, height |
GET | api/total-area |
Para executar os testes de integração e unitários, utilize o seguinte comando:
# Entre no container da aplicação
> docker exec -itu 0 emcash-polygon-main-1 sh
# Execute os testes
> php artisan test
# Execute os testes
> php artisan test