TP-programmation-orientee-o.../TP02/PointTest.java

102 lines
2.3 KiB
Java
Raw Permalink Normal View History

2023-06-20 19:02:09 +00:00
import org.junit.*;
import static org.junit.Assert.*;
import java.awt.Color;
/** Programme de test de la classe Point.
* @author Xavier Crégut
* @version 1.11
*/
public class PointTest {
public static final double EPSILON = 1e-6;
// précision pour la comparaison entre réels.
private Point p1;
private Point p2;
@Before
public void setUp() {
p1 = new Point(1, 2);
p2 = new Point(4, -2);
}
@Test
public void testInitialisation() {
assertTrue(p1 != null);
assertTrue(p2 != null);
assertTrue(p1.getX() == 1);
assertTrue(p1.getY() == 2);
assertTrue(p2.getX() == 4);
assertTrue(p2.getY() == -2);
}
@Test
public void testInitialisationMieux() {
assertNotNull(p1);
assertNotNull(p2);
// Remarque : faire un test d'égalité sur des réels est à éviter
// à cause des erreurs d'arrondi. En conséquence, il faut
// vérifier que les deux nombres sont égaux à EPSILON près.
// C'est ce que fait assertEquals(attendu, réel, précision)
assertEquals(1.0, p1.getX(), EPSILON);
assertEquals(2.0, p1.getY(), EPSILON);
assertEquals(4.0, p2.getX(), EPSILON);
assertEquals(-2.0, p2.getY(), EPSILON);
}
@Test
public void testSetX() {
p1.setX(10);
assertEquals(10.0, p1.getX(), EPSILON);
p1.setX(-5);
assertEquals(-5.0, p1.getX(), EPSILON);
}
@Test
public void testSetY() {
p1.setY(10);
assertEquals(10.0, p1.getY(), EPSILON);
p1.setY(-5);
assertEquals(-5.0, p1.getY(), EPSILON);
}
@Test
public void testDistance() {
assertEquals(0.0, p1.distance(p1), EPSILON);
assertEquals(0.0, p2.distance(p2), EPSILON);
assertEquals(5.0, p1.distance(p2), EPSILON);
assertEquals(5.0, p2.distance(p1), EPSILON);
}
@Test
public void testTranslater1() {
p1.translater(2, 4);
assertEquals(3.0, p1.getX(), EPSILON);
assertEquals(6.0, p1.getY(), EPSILON);
}
@Test
public void testTranslater2() {
p2.translater(-2, -4);
assertEquals(2.0, p2.getX(), EPSILON);
assertEquals(-6.0, p2.getY(), EPSILON);
}
@Test
public void testCouleur() {
assertEquals(p1.getCouleur(), Color.GREEN);
assertEquals(p2.getCouleur(), Color.GREEN);
}
@Test
public void testSetCouleur() {
p1.setCouleur(Color.RED);
p2.setCouleur(Color.BLUE);
assertEquals(p1.getCouleur(), Color.RED);
assertEquals(p2.getCouleur(), Color.BLUE);
}
}