BUT2/DEV/DEV2.3/cm3/TestsACompleterDirection.java

76 lines
1.7 KiB
Java
Raw Normal View History

2023-10-23 13:23:36 +02:00
import static org.junit.Assert.assertTrue; // import static : une facilité offerte depuis java5 (pas besoin de mettre le préfixe)
import static org.junit.Assert.assertFalse; //
import static org.junit.Assert.assertEquals; //
import org.junit.Test;
import java.lang.StringBuilder;
/**
* Une classe pour faire des tests sur la classe MaMemoire avec JUnit
*/
public class TestsACompleterDirection {
/**
* Test nord x vaut 0
*/
@Test
public void Nordx(){
Direction d = Direction.NORD;
assertEquals(0,d.getDecalageX());
}
/**
* Test nord y vaut -1
*/
@Test
public void Nordy(){
Direction d = Direction.NORD;
assertEquals(-1,d.getDecalageY()); //on constate que dans le fichier Direction.java, les
}
/**
* Test que reset retourne une NullPointerException
*/
@Test(expected = NullPointerException.class)
public void ResetNPE(){
Direction.reset();
}
/**
* Test que l'on peut faire 64 fois un huitième de tour dans le sens trigonométrique et être au même endroit quand on part du Sud Est
*/
@Test
public void whenIGetOlder(){
Direction d1 = Direction.SE;
Direction d2 = Direction.SE;
for (int i=0; i<64; i++){
d2 = d2.huitDeTour();
}
assertEquals(d1,d2);
}
/**
* Test que l'on peut faire 65 fois un huitième detour dans le sens antitrigonométrique et être au même endroit que si on faisait un anti huitième de tour quand on part du Sud Est
*/
@Test
public void losingMyHair(){
Direction d1 = Direction.SE;
Direction d2 = Direction.SE;
for (int i=0; i<65; i++){
d2 = d2.huitDeTourAnti();
}
assertEquals(d1.huitDeTourAnti(),d2);
}
}