import org.jmock.*; import batNavale.*; public class JeuTest extends MockObjectTestCase { public void testJeuJoueur1GagneEn1Tour() { Mock mockJoueur1 = mock(Joueur.class); Mock mockJoueur2 = mock(Joueur.class); Jeu j = new Jeu((Joueur)mockJoueur1.proxy(), (Joueur)mockJoueur2.proxy()); //mockJoueur1.expects(once()).method("jouer").will(returnValue(NOT_NULL)); //mockJoueur2.expects(once()).method("jouer").will(returnValue(NOT_NULL)); mockJoueur1.expects(once()).method("aPerdu").will(returnValue(false)); mockJoueur2.expects(once()).method("aPerdu").will(returnValue(true)); j.jouer(); } public void testJeuJoueur1GagneEn3Tours() { Mock mockJoueur1 = mock(Joueur.class); Mock mockJoueur2 = mock(Joueur.class); Jeu j = new Jeu((Joueur)mockJoueur1.proxy(), (Joueur)mockJoueur2.proxy()); mockJoueur1.expects(exactly(2)).method("jouer"); mockJoueur2.expects(exactly(2)).method("jouer"); mockJoueur1.expects(exactly(3)). method("aPerdu"). will(returnValue(false)); mockJoueur2.expects(exactly(3)). method("aPerdu"). will( onConsecutiveCalls( returnValue(false), returnValue(false), returnValue(true) ) ); j.jouer(); } }