Skip to content

Commit

Permalink
Merge pull request #53 from Joaquimborges/dev
Browse files Browse the repository at this point in the history
Dev
  • Loading branch information
hugaodamm committed Nov 17, 2021
2 parents c9434b9 + 0f572b8 commit aff1e50
Show file tree
Hide file tree
Showing 2 changed files with 74 additions and 1 deletion.
2 changes: 1 addition & 1 deletion src/main/java/com/bootcamp_w3_g3/service/LoteService.java
Expand Up @@ -153,7 +153,7 @@ public List<DTOLote> retornaLotesArmazenadosDoProduto(String codSetor, Integer q

/**
* metodo auxiliar para retornar todos os lotes que têm a
* validade dentro do perido requerido.
* validade dentro do periodo requerido.
* @autor Joaquim Borges
*/
private List<DTOLote> lotesDentroDoPeriodo(List<Lote> lotes, Integer qtdDias) {
Expand Down
Expand Up @@ -165,6 +165,17 @@ private ProdutoForm payloadProduto10() {
;
}

private ProdutoForm payloadProduto11() {
return ProdutoForm.builder()
.codigoDoProduto(59)
.nome("sorvete")
.preco(10.0)
.tipoProduto(TipoProduto.REFRIGERADOS)
.temperaturaIndicada(16.0)
.build()
;
}

private RepresentanteForm payloadRepresentante(){
return RepresentanteForm.builder()
.codigo("R-30")
Expand All @@ -187,6 +198,17 @@ private RepresentanteForm payloadRepresentante2(){
.build();
}

private RepresentanteForm payloadRepresentante3(){
return RepresentanteForm.builder()
.codigo("R-102")
.nome("Matheus")
.sobrenome("Gomes")
.endereco("rua qualquer")
.cpf("123.234.345-04")
.telefone("11-2473648")
.build();
}

private void persisteRepresentante(RepresentanteForm representanteForm) {
Representante representante = Representante.builder()
.nome(representanteForm.getNome())
Expand Down Expand Up @@ -223,6 +245,18 @@ private ArmazemForm payloadArmazem2(RepresentanteForm representanteForm) {
.uf("SP").build();
}

private ArmazemForm payloadArmazem3(RepresentanteForm representanteForm) {
this.persisteRepresentante(representanteForm);

return ArmazemForm.builder()
.codArmazem("AR-102")
.nome("armazem central")
.representante(representanteForm)
.endereco("qualquer lugar")
.numero(100)
.uf("SP").build();
}

private void persisteArmazem(ArmazemForm armazemForm) {

Representante representante = this.representanteService.obter(armazemForm.getRepresentante().getCodigo());
Expand Down Expand Up @@ -529,4 +563,43 @@ void deveListarOrdenadosPorLotes() throws Exception{

}

/**
* Teste deve listar todos os lotes do setor do produto
* ordenados pela data de validade.
* @autor Joaquim Borges
*/
@Test
void deveListarLotesDoSetorDoProduto() throws Exception {
ProdutoForm produtoForm = payloadProduto11();
this.persisteProduto(produtoForm);

RepresentanteForm representanteForm = payloadRepresentante3();
ArmazemForm armazemForm = payloadArmazem3(representanteForm);
this.persisteArmazem(armazemForm);

SetorForm setorForm = SetorForm.builder().codigo("S-102")
.tipoProduto(TipoProduto.REFRIGERADOS).nome("B")
.armazem(armazemForm).build();

this.persisteSetor1(setorForm);

LoteForm loteForm1 = LoteForm.builder().numero(102)
.produtoForm(produtoForm).setorForm(setorForm)
.temperaturaAtual(14.2).temperaturaMinima(12.1)
.dataDeFabricacao(LocalDate.now()).dataDeValidade(LocalDate.of(2021, 12, 17))
.quantidadeAtual(4).build();

LoteForm loteForm2 = LoteForm.builder().numero(103)
.produtoForm(produtoForm).setorForm(setorForm)
.temperaturaAtual(14.2).temperaturaMinima(12.1)
.dataDeFabricacao(LocalDate.now()).dataDeValidade(LocalDate.of(2021, 12, 27))
.quantidadeAtual(4).build();

persisteLote2(loteForm1);
persisteLote2(loteForm2);

this.mockMvc.perform(get("http://localhost:8080/produtos/lotes/validade/" + setorForm.getCodigo() + "/20" ))
.andExpect(status().isOk());
}

}

0 comments on commit aff1e50

Please sign in to comment.