Estou aprendendo JUNIT através de uma video aula, o codigo está igual mais está falhando. alguém poderia me dar um Help aí.
package br.com.caelum.leilao.dominio;
public class Lance {
private Usuario usuario;
private double valor;
public Lance(Usuario usuario, double valor) {
this.usuario = usuario;
this.valor = valor;
}
public Usuario getUsuario() {
return usuario;
}
public double getValor() {
return valor;
}
}
package br.com.caelum.leilao.dominio;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
public class Leilao {
private String descricao;
private List<Lance> lances;
public Leilao(String descricao) {
this.descricao = descricao;
this.lances = new ArrayList<Lance>();
}
public void propoe(Lance lance) {
lances.add(lance);
}
public String getDescricao() {
return descricao;
}
public List<Lance> getLances() {
return Collections.unmodifiableList(lances);
}
}
package br.com.caelum.leilao.dominio;
public class Usuario {
private int id;
private String nome;
public Usuario(String nome) {
this(0, nome);
}
public Usuario(int id, String nome) {
this.id = id;
this.nome = nome;
}
public int getId() {
return id;
}
public String getNome() {
return nome;
}
}
package br.com.caelum.leilao.servico;
import br.com.caelum.leilao.dominio.Lance;
import br.com.caelum.leilao.dominio.Leilao;
public class Avaliador {
private double maiorDeTodos = Double.NEGATIVE_INFINITY;
private double menorDeTodos = Double.NEGATIVE_INFINITY;
public void avalia(Leilao leilao) {
for (Lance lance : leilao.getLances()) {
if (lance.getValor() > maiorDeTodos) maiorDeTodos = lance.getValor();
if (lance.getValor() < menorDeTodos) menorDeTodos = lance.getValor();
}
}
public double getMaiorLancer() {
return maiorDeTodos;
}
public double getMenorLancer() {
return menorDeTodos;
}
}
package br.com.caelum.leilao.teste;
import org.junit.Assert;
import org.junit.Test;
import br.com.caelum.leilao.dominio.Lance;
import br.com.caelum.leilao.dominio.Leilao;
import br.com.caelum.leilao.dominio.Usuario;
import br.com.caelum.leilao.servico.Avaliador;
public class TesteAvaliador {
@Test
public void deveEntenderLanceOrdemCrescente() {
Usuario joao = new Usuario("João");
Usuario jose = new Usuario("José");
Usuario pedro = new Usuario("Pedro");
Leilao leilao = new Leilao("Playstation 3");
leilao.propoe(new Lance(pedro, 400.0));
leilao.propoe(new Lance(joao, 300.0));
leilao.propoe(new Lance(jose, 250.0));
Avaliador leiloeiro = new Avaliador();
leiloeiro.avalia(leilao);
double maiorEsperado = 400;
double menorEsperado = 250;
Assert.assertEquals(menorEsperado, leiloeiro.getMenorLancer(), 0.00001);
Assert.assertEquals(maiorEsperado, leiloeiro.getMaiorLancer(), 0.00001);
}
}