Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

InOrder não está funcionando (Junho/2018)

O código a seguir não está funcionando.

InOrder inOrder = inOrder(daoFalso, carteiroFalso);

É apresentado a mensagem: The method inOrder(RepositorioDeLeiloes, EnviadorDeEmail) is undefined for the type EncerradorDeLeilaoTest

Segue o código da class EncerradorDeLeilaoTest:

package br.com.caelum.leilao.servico;

import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertTrue;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.times;
import static org.mockito.Mockito.when;
import static org.mockito.Mockito.inOrder;

import java.util.Arrays;
import java.util.Calendar;
import java.util.List;

import org.junit.Test;
import org.mockito.InOrder;

import br.com.caelum.leilao.builder.CriadorDeLeilao;
import br.com.caelum.leilao.dominio.Leilao;
import br.com.caelum.leilao.infra.dao.EnviadorDeEmail;
import br.com.caelum.leilao.infra.dao.RepositorioDeLeiloes;

public class EncerradorDeLeilaoTest {

    @Test
    public void DeveEncerrarLeiloesQueCOmecaramUmaSemanaAntes () {
        Calendar antiga = Calendar.getInstance();
        antiga.set(1999, 1, 20);

        Leilao leilao1 = new CriadorDeLeilao().para("TV de Led").naData(antiga).constroi();
        Leilao leilao2 = new CriadorDeLeilao().para("Geladeira").naData(antiga).constroi();
        List<Leilao> leiloesAntigos = Arrays.asList(leilao1, leilao2);

        RepositorioDeLeiloes daoFalso = mock(RepositorioDeLeiloes.class);
        when(daoFalso.correntes()).thenReturn(leiloesAntigos);

        EnviadorDeEmail carteiroFalso = mock(EnviadorDeEmail.class);

        EncerradorDeLeilao encerrador = new EncerradorDeLeilao(daoFalso, carteiroFalso);
        encerrador.encerra();

        assertEquals(2, encerrador.getTotalEncerrados());
        assertTrue(leilao1.isEncerrado());
        assertTrue(leilao2.isEncerrado());

        InOrder inOrder = inOrder(daoFalso, carteiroFalso);
        inOrder.verify(daoFalso, times(1)).atualiza(leilao1);  
        inOrder.verify(carteiroFalso, times(1)).envia(leilao1);
    }
}
1 resposta
solução!

Resolvido.

Adicionado imports:

import static org.mockito.Mockito.inOrder;