Olá pessoal, tudo bem? Bom, vamos aqui então para os testes de regressão manual. Vamos dar uma olhada via GraphQL e via Postman se tudo continua funcionando perfeitamente. Afinal, nossos testes dizem que estão. Tudo bem que está faltando um teste de GraphQL aqui. Não temos testes para essa layer, mas vamos lá. Eu vou subir a aplicação aqui. Já me certifiquei de que o meu banco está rodando com sucesso. Então, vou subir aqui. Ah, opa. Como a gente mudou algumas coisas aqui do banco, ele vai reclamar. Então, vou fazer o seguinte. ele vai reclamar, então vou fazer o seguinte, vou remover tudo aqui e vou subir de novo docker-compose up-d beleza vamos ver se ele já está de pé está subindo, agora sim, vamos rodar de novo a aplicação. Stop and rerun. Agora sim, criou novamente. Ok, então vamos lá. Primeiro, vamos direto pelo GraphQL, que eu acho que dá pra gente explorar, né? fica mais visível então localhost api-graphql not found agora sim a gente até tinha deixado algumas coisas aqui se a gente tentar executar vai tornar vazar vazio, invalidValueForCustomer, claro que agora a gente tem o id, então vamos lá, vamos primeiro criar um customer aqui, vamos comentar isso aqui, e vamos comentar isso aqui, beleza, vamos solicitar então o John, CPF com inválido e meio inválido, vamos ver o que vai acontecer, ele vai retornar erro, inválido CPF, ainda não tem resolvers para isso, depois seria interessante ter uma implementação de resolvers de maneira mais adequada, mas está tudo bem, não é o foco da aula. Vamos lá, .2300gmail.com. Então agora se a gente solicitar, a gente obteve o nosso customer aqui. Se a gente solicitar isso aqui A gente consegue buscar Esse customer corretamente Então vamos lá E aí customer of id john Perfeito, dá até pra colocar aqui Customer E fazer um alias Show de bola Vamos agora então criar um partner que é o mutation create partner que é a mesma coisa vai demandar ponto dois três ponto um dois três mil contra alguma coisa colocar outro comentário aqui John partner arroba gmail.com a gente vai listar a criação ele vai criar com sucesso vamos copiar isso aqui vou comentar o partner vamos lá na hora de buscar o partner, então ele vai ser o partner e aí aqui a diferença é que agora é um id string se a gente fizer o fetch beleza ele tá funcionando também então partner e customer funcionando agora a gente pode criar um event de 2.0 essa data foi total spots 100 e o partner id esse aqui, vamos colocar total spots 1 só vamos criar beleza criamos o nosso evento e aí agora a gente pode fazer um subscribe do customer para o evento. Então, esse é o ID do evento. E, cadê? Este é o ID do customer. Se a gente fizer, beleza. Então, inscrevemos o nosso customer no evento com sucesso. Se a gente tentar de novo, ele vai dar erro, porque o e-mail já foi registrado se a gente quiser criar um novo customer, vamos descomentar esse aqui descomentar esse aqui por hora vamos colocar um outro cpf e um outro e-mail criamos um novo customer, vamos comentar e descomentar esse agora, a gente vai sobrescrever esse segundo, que em tese não deveria poder, e realmente não poder, porque o evento foi já vendido, só tinha uma cadeira. Então, a gente garante que está funcionando 100% aqui da nossa aplicação via GraphQL a gente até pode também fazer um teste por exemplo via via Postman vamos criar aqui um Customer Audio Undo, tem algumas informações aqui Invalid CPF porque agora ele demanda formatação legal, funcionou Copiar esse ID deste Customer Vamos simular aqui esse Get Funcionou também List, a gente nem tem List CreatePartner Aqui também a mesma coisa, vai precisar disso aqui Beleza Vamos pegar esse identificador substituir aqui o gás por aí de beleza funciona também disse não tem creio que eventos partilharam de que a gente acabou de criar nos colocar para podemos Vamos colocar Podemos deixar 10 mesmo A invalidez, porque agora é no formatinho Esse Esse Esse Vamos colocar um de novo, só pra gente simular o mesmo erro lá Então, esse é o ID do evento Subscribe to event A gente vai colocar o evento aqui E o Este ID de customer Que vai vir aqui no body e show de bola né então sobre escrevemos corretamente todos os endpoints funcionando corretamente, refactoring 100% bem sucedido na nossa aplicação, que começou com o BigBallOfMud, a gente foi refatorando, criamos os inbound adapters, depois criamos os casos de uso, depois toda a parte do nosso domain e finalizamos com o outbound adapter, fizemos algumas mudanças na modelagem para suportar justamente o nosso modelo de domínio. E é isso. Ficou bem legal essa implementação de hexagonal. Por favor, mande seu feedback depois para a gente. E vejo vocês na próxima aula.