read me terminé + nouveau test
This commit is contained in:
@@ -1,8 +1,8 @@
|
||||
V1:
|
||||
|
||||
Nous testons d'abord le CompatibilityManager. On fait un BeforeEach pour initialisé un CompatibilityManager (celui vu en td)
|
||||
On test si les Incompatibilities et Requirements sont bien récupérable à partir du CompatibilityManager avec les fonction getIncompatibilities et getRequirements.
|
||||
|
||||
Nous testons d'abord le CompatibilityManager. On fait un BeforeEach pour initialiser un CompatibilityManager (celui vu en TD)
|
||||
On teste si les Incompatibilities et Requirements sont bien récupérables à partir du CompatibilityManager avec les fonctions getIncompatibilities et getRequirements. GetIncompatibilities et getRequirements doivent donner toutes les Part incompatibles ou Require, même si elles n'ont pas été données directement à la Part testée. On doit donc aussi vérifier la contradiction : A a besoin de B mais B est incompatible avec A, alors A est incompatible avec lui-même.
|
||||
On teste aussi la configuration, en vérifiant si une configuration est complète et si elle est validée (dans notre implémentation V1, une configuration validée est forcément complète, mais pas forcément l'inverse).
|
||||
|
||||
|
||||
nous ne savons pas pourquoi mais dans notre projet les tests avec couverture ne fonctionnent pas, les tets sont bien testé, mais il tourne dans le vide et ne donne jamais le résultat de la couverture...
|
||||
@@ -3,7 +3,7 @@ package src.fr.test;
|
||||
import java.util.Set;
|
||||
import java.util.HashSet;
|
||||
|
||||
|
||||
import static org.junit.Assert.assertFalse;
|
||||
import static org.junit.jupiter.api.Assertions.*;
|
||||
|
||||
import org.junit.jupiter.api.Test;
|
||||
@@ -43,6 +43,7 @@ public class test {
|
||||
PartType IH= new PartTypeImpl("IH", Interior);
|
||||
PartType IS= new PartTypeImpl("IS", Interior);
|
||||
|
||||
|
||||
CompatibilityManager cm;
|
||||
|
||||
|
||||
@@ -208,6 +209,27 @@ public class test {
|
||||
assertTrue(cm.getIncompatibilities(TSF7).contains(ED110));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void test_contradiction(){
|
||||
CompatibilityManager cm2 = new CompatibilityManagerImpl();
|
||||
PartType eg= new PartTypeImpl("Eg", Engine);
|
||||
PartType tr= new PartTypeImpl("Tr", Transmission);
|
||||
|
||||
Set<PartType> egIncompatibilities = new HashSet<PartType>();
|
||||
egIncompatibilities.add(tr);
|
||||
cm.addIncompatibilities(eg, egIncompatibilities);
|
||||
|
||||
Set<PartType> efRequirement = new HashSet<PartType>();
|
||||
efRequirement.add(eg);
|
||||
cm.addRequirements(tr, efRequirement);
|
||||
|
||||
|
||||
assertFalse(cm.getIncompatibilities(eg).contains(eg));
|
||||
assertTrue(cm.getRequirements(tr).contains(eg));
|
||||
assertTrue(cm.getIncompatibilities(tr).contains(tr)); //tr Require eg, eg Incompatible tr, -> eg Incompatible eg
|
||||
|
||||
}
|
||||
|
||||
@Test
|
||||
public void test_isComplete_empty_config(){
|
||||
ConfigurationImpl config1 = new ConfigurationImpl(cm);
|
||||
@@ -285,4 +307,29 @@ public class test {
|
||||
assertFalse(config1.isValid());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void test_contradiction_config(){
|
||||
CompatibilityManager cm2 = new CompatibilityManagerImpl();
|
||||
PartType eg= new PartTypeImpl("Eg", Engine);
|
||||
PartType tr= new PartTypeImpl("Tr", Transmission);
|
||||
PartType ex= new PartTypeImpl("Ex", Exterior);
|
||||
PartType in= new PartTypeImpl("In", Interior);
|
||||
|
||||
Set<PartType> egIncompatibilities = new HashSet<PartType>();
|
||||
egIncompatibilities.add(tr);
|
||||
cm.addIncompatibilities(eg, egIncompatibilities);
|
||||
|
||||
Set<PartType> efRequirement = new HashSet<PartType>();
|
||||
efRequirement.add(eg);
|
||||
cm.addRequirements(eg, efRequirement);
|
||||
|
||||
ConfigurationImpl config1 = new ConfigurationImpl(cm);
|
||||
config1.selectPart(eg);
|
||||
config1.selectPart(tr);
|
||||
config1.selectPart(ex);
|
||||
config1.selectPart(in);
|
||||
|
||||
assertFalse(config1.isValid());
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user