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é ?