2
respostas

Método comLance() não foi criado na classe LanceBuilder (com código)

public class LeilaoBuilder {

private Usuario dono;
private double valor;
private String nome;
private boolean usado;
private Calendar dataAbertura;
private boolean encerrado;

public LeilaoBuilder() {
    this.dono = new Usuario("Joao da Silva", "joao@silva.com.br");
    this.valor = 1500.0;
    this.nome = "XBox";
    this.usado = false;
    this.dataAbertura = Calendar.getInstance();
}

public LeilaoBuilder comDono(Usuario dono) {
    this.dono = dono;
    return this;
}

public LeilaoBuilder comValor(double valor) {
    this.valor = valor;
    return this;
}

public LeilaoBuilder comNome(String nome) {
    this.nome = nome;
    return this;
}

public LeilaoBuilder usado() {
    this.usado = true;
    return this;
}

public LeilaoBuilder encerrado() {
    this.encerrado = true;
    return this;
}

public LeilaoBuilder diasAtras(int dias) {
    Calendar data = Calendar.getInstance();
    data.add(Calendar.DAY_OF_MONTH, -dias);

    this.dataAbertura = data;

    return this;
}

public Leilao constroi() {
    Leilao leilao = new Leilao(nome, valor, dono, usado);
    leilao.setDataAbertura(dataAbertura);
    if(encerrado) leilao.encerra();

    return leilao;
}

}

/* e está sendo usado no método abaixo*/

@Test
public void deveRetornarLeiloesDisputados() {
    Usuario mauricio = new Usuario("Mauricio", "mauricio@aniche.com.br");
    Usuario marcelo = new Usuario("Marcelo", "marcelo@aniche.com.br");

    Leilao leilao1 = new LeilaoBuilder()
            .comDono(marcelo)
            .comValor(3000.0)
            .comLance(Calendar.getInstance(), mauricio, 3000.0)
            .comLance(Calendar.getInstance(), marcelo, 3100.0)
            .constroi();

    Leilao leilao2 = new LeilaoBuilder()
            .comDono(mauricio)
            .comValor(3200.0)
            .comLance(Calendar.getInstance(), mauricio, 3000.0)
            .comLance(Calendar.getInstance(), marcelo, 3100.0)
            .comLance(Calendar.getInstance(), mauricio, 3200.0)
            .comLance(Calendar.getInstance(), marcelo, 3300.0)
            .comLance(Calendar.getInstance(), mauricio, 3400.0)
            .comLance(Calendar.getInstance(), marcelo, 3500.0)
            .constroi();

    usuarioDao.salvar(marcelo);
    usuarioDao.salvar(mauricio);
    leilaoDao.salvar(leilao1);
    leilaoDao.salvar(leilao2);

    List<Leilao> leiloes = leilaoDao.disputadosEntre(2500, 3500);

    assertEquals(1, leiloes.size());
    assertEquals(3200.0, leiloes.get(0).getValorInicial(), 0.00001);
}
2 respostas

Fala Fabrício, tudo bem?

Você pode subir seu projeto no github para eu fazer download, por gentileza?

Opa Otávio, tudo tranquilo!

Segue o link do projeto: https://github.com/FSausen/teste-de-unidade_Leilao

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software