Mettez en place une batterie de tests unitaires pour les interfaces suivantes :
package testsUnitaires.tp; /** * * Spécifie un point dans le plan (on remarquera qu'un point est aussi un * vecteur). * */ public interface InterfacePoint { public int getOrd(); public int getAbs(); public void setOrd(int ord); public void setAbs(int abs); /** * Retourne la somme des deux points. */ public InterfacePoint add(InterfacePoint p); public boolean equals(InterfacePoint p); }
package testsUnitaires.tp; /** * Représente un object mobile dans le plan. */ public interface InterfaceCursor { /** * Retourne la position de l'objet. */ public InterfacePoint getPosition(); /** * Retourne la direction vers laquelle l'objet est tourné. */ public InterfacePoint getDirection(); /** * Restaure la position à 0 et la direction à (1, 0) */ /** * Détermine la position de l'objet. */ public void setPosition(InterfacePoint position); /** * Détermine la direction vers laquelle l'objet est tourné. */ public void setDirection(InterfacePoint direction); /** * Restaure la position à 0 et la direction à (1, 0) */ public void reset(); /** * Fait avancer le mobile d'un pas dans la direction dans laquelle il est * tourné. */ public void stepStraigth(); /** * Fait pivoter l'objet d'un quart de tour vers la gauche. */ public void turnLeft(); /** * Fait pivoter l'objet d'un quart de tour vers la droite. */ public void turnRight(); }
Implémentez ces deux interfaces.
Échangez vos classes de test avec celles d’un autre étudiant, voire avec celles du corrigé. Est-ce que ces tests fonctionnent ?
Échangez vos implémentations de la classe
InterfacePoint
. Est-ce que
les tests fonctionnent encore ? Est-ce que vos tests fonctionnent avec les implémentations
du corrigé ?