Skip to content

Instantly share code, notes, and snippets.

View rafaelpontezup's full-sized avatar

Rafael Ponte rafaelpontezup

View GitHub Profile
@rafaelpontezup
rafaelpontezup / desafio-pix-testes-de-integracao-abordagens.md
Created March 17, 2021 21:21
Desafio Pix: abordagens nos testes de integração

Para escrever os testes de integração dos endpoints gRPC eu tive basicamente que levantar o contexto do Micronaut (com @MicronautTest) juntamente com um banco H2 em vez do PostgreSQL pois meu schema é MUITO simples e não valeria o custo de levantar um PostgreSQL via TestContainers. Por haver muita integração com os serviços satélites ITAU-ERP e BCB, eu mockei ambos.

No fim, eu segui duas abordagem na hora de escrever os cenários de testes:

  1. Para o endpoint RegistraChaveEndpoint, eu adentrei sua classe Service para extrair os cenários de testes, ou seja, todos os cenários foram concebidos a partir das classes de Endpoint + Service. No fim, escrevi uma única classe com todos os testes: [RegistraChaveEndpointTest](https://github.com/zup-academy/orange-stack-pix-keymanager-grpc/blob/master/src/test/kotlin/br/com/zup/edu/pix/registra/RegistraChaveEndpoin
@rafaelpontezup
rafaelpontezup / Instituicoes.kt
Last active March 2, 2021 20:54
[Desafio PIX] Todas as instituições do BCB em um Map com Kotlin
package br.com.zup.edu.pix
import java.lang.IllegalStateException
/**
* Representa todas as instituições financeiras passíveis de trabalhar com Pix
* https://www.bcb.gov.br/pom/spb/estatistica/port/ASTR003.pdf (line 229 - 60701190 ITAÚ UNIBANCO S.A)
*/
class Instituicoes {
@rafaelpontezup
rafaelpontezup / AssociarPropostasAosCartoesJob.java
Last active February 19, 2021 21:25
Bootcamp: Exercicio de Agendamento de Tarefas implementado nas sessões de check-outs estendidas
package br.com.zup.edu.nossocartao.propostas.cards.jobs;
import br.com.zup.edu.nossocartao.propostas.cards.CardRepository;
import br.com.zup.edu.nossocartao.propostas.cards.integration.CardsClient;
import br.com.zup.edu.nossocartao.propostas.cards.integration.FindCardByProposalIdResponse;
import br.com.zup.edu.nossocartao.propostas.cards.model.Card;
import br.com.zup.edu.nossocartao.propostas.proposals.ProposalRepository;
import br.com.zup.edu.nossocartao.propostas.proposals.model.Proposal;
import br.com.zup.edu.nossocartao.propostas.proposals.model.ProposalStatus;
import org.springframework.beans.factory.annotation.Autowired;
@rafaelpontezup
rafaelpontezup / links.md
Created August 3, 2020 14:50 — forked from giggio/links.md
Links palestra "Usando um ambiente Linux completo no Windows com WSL e VSCode"