Skip to content

concretesolutions/mock-api

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

61 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Build Status codecov.io Codacy Badge

Coverage History

codecov.io

Mock API

App criado para fazer mock com REST utilizando JSON

Regras

Quando uma request é feita é seguido o seguinte fluxo:

  • Existe na pasta do mock (conforme a propriedade api.fileBase)? Caso sim, retorna o mock
  • A uri se encaixa em algum pattern da lista de api.uriConfigurations[].pattern? Caso sim, vai redirecionar conforme a configuração e fazer fazer cache conforme o field backup
  • Se não entrar nos fluxos anteriores, vai redirecionar para o host padrão api.host

Requisitos

  • Java JDK 8
  • Gradle 4

Run

Usando seu arquivo de propriedades

Crie seu arquivo de propriedade src/main/resources/application-custom.yml e rode com o argumento -Dspring.profiles.active=custom. Exemplo:

gradle bootRun -Dspring.profiles.active=custom

Usando imagem Docker

Para gerar a imagem Docker do projeto, execute:

gradle buildDocker

Por padrão, o nome da imagem será concretesolutions/mock-api:VERSAO.

Para rodar a aplicação, crie dois diretórios: um contendo o arquivo de configuração application-custom.yml e o outro contendo os arquivos de mock. Execute então:

docker run -d --name mock-api \
       -p 9090:9090 \
       -v /path/para/arquivo/application-custom.yml:/config/application.yml \
       -v /path/para/diretorio/dados/:/data \
       concretesolutions/mock-api:VERSAO

A porta 9090 expõe o serviço enquanto a porta 5000 é utilizada para debug da aplicação.

Para visualizar os logs da aplicação a partir do container: docker logs -f mock-api

TODO

  • Separar testes unitários dos testes integrados
  • Corrigir os testes ignorados
  • Corrigir Code Style
  • Adicionar plugin do FindBugs
  • Revisar dependências (ver, por exemplo, se é mesmo necessário ter o GSON ou modelmapper)
  • Usar objectmapper como component: compile('com.fasterxml.jackson.datatype:jackson-datatype-jdk8')

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages