Oi, Lucas. Elas estão assim:
Avaliador
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Caelum.Leilao
{
class Avaliador
{
private double maiorDeTodos = Double.MinValue;
private double menorDeTodos = Double.MaxValue;
public void Avalia(Leilao leilao)
{
foreach (var lance in leilao.Lances)
{
if (lance.Valor > maiorDeTodos) maiorDeTodos = lance.Valor;
if (lance.Valor < menorDeTodos) menorDeTodos = lance.Valor;
}
}
public double MaiorLance
{
get
{
return maiorDeTodos;
}
}
public double MenorLance
{
get
{
return menorDeTodos;
}
}
}
}
AvaliadorTest
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using NUnit.Framework;
namespace Caelum.Leilao
{
[TestFixture]
public class AvaliadorTest
{
[Test]
public void DeveEntenderLancesEmOrdemCrescente()
{
// cenario: 3 lances em ordem crescente
Usuario joao = new Usuario("Joao");
Usuario jose = new Usuario("José");
Usuario maria = new Usuario("Maria");
Leilao leilao = new Leilao("Playstation 3 Novo");
leilao.Propoe(new Lance(maria, 250.0));
leilao.Propoe(new Lance(joao, 300.0));
leilao.Propoe(new Lance(jose, 400.0));
// executando a acao
Avaliador leiloeiro = new Avaliador();
leiloeiro.Avalia(leilao);
// comparando a saida com o esperado
double maiorEsperado = 400;
double menorEsperado = 250;
Assert.AreEqual(maiorEsperado, leiloeiro.MaiorLance, 0.0001);
Assert.AreEqual(menorEsperado, leiloeiro.MenorLance, 0.0001);
}
}
}
As outras eu não modifiquei