🧱 Projeto criado com Siler, que facilita a utilização do Swoole.
Por estar usando uma estrutura de pastas diferença, a pasta do .git esta no nível acima, vai apresentar error na configuração do captainhook/captainhook, mas a instalação dos componentes é finalizada corretamente.
composer install
Levanta o Servidor embutido do PHP na porta 8080.
Levanta o Servidor do Swoole na porta 9501.
Recomentado se não tiver o Swoole instalado na maquina ou o xdebug padrão configurado. Levanta o Docker usando Dwoole na porta 9501.
Esta usando ramsey/devtools
com o Pest.
composer test:unit
Foi usando o componente de injeção de dependência do Symfony o The DependencyInjection Component
Todo: configurar o docker composer para subir todos os serviços e obter os endereços internos.
[app]
name = "Hello, World!"
[service.one]
url = 'http://127.0.0.1:8000'
[service.two]
url = 'http://127.0.0.1:8001'
[service.three]
url = 'http://127.0.0.1:8003'
Arquivo de configuração.
Busca uma informação segura por ID do Service One
OBS : Se estiver usando o docker essa rota não vai conseguir achar o Service One pois não esta configurado o docker network.
URL : /v1/find-information-by-id/{informationId}
Method : GET
Response
{
"cpf": "00012398727",
"nome": "Name test",
"endereco": "Address test"
}
Busca uma informação segura por CPF do Service One e Service Two
URL : /v1/find-information-by-cpf-service-one-two/{cpf}
Method : GET
Response
{
"cliente": {
"cpf": "74894733064",
"nome": "Nome mock test",
"endereco": "Endereço Mock"
},
"detalhes": {
"idade": 30,
"bens": {
"veiculos": {
"carro": "hb20"
},
"imoveis": {
"apto": "rua xx ali"
}
},
"renda": [
"empresa x",
"aposentadoria"
]
}
}
URL : /v1/find-information-all-by-cpf/{cpf}
Method : GET
Response
{
"cliente": {
"cpf": "74894733064",
"nome": "Nome mock test",
"endereco": "Endereço Mock"
},
"detalhes": {
"idade": 30,
"bens": {
"veiculos": {
"carro": "hb20"
},
"imoveis": {
"apto": "rua xx ali"
}
},
"renda": [
"empresa x",
"aposentadoria"
]
},
"atividades": {
"ultimaConsulta": "2020-08-05T00:00:00+00:00",
"ultimaCompra": "kabum",
"movimentacoesFinanceiras": {
"debitos": [
"deb -> 1",
"deb -> 2"
],
"cretidos": [
"cred -> 1",
"cred -> 2"
]
}
}
}