142 lines
3.0 KiB
Java
142 lines
3.0 KiB
Java
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.assertSame; //
|
|
import org.junit.Test;
|
|
|
|
|
|
import java.util.NoSuchElementException;
|
|
import java.util.Random;
|
|
|
|
|
|
/**
|
|
* Une classe pour faire des tests sur la classe SimpleDeque avec JUnit
|
|
* On utlise des string comme type paramétré.
|
|
*/
|
|
public class TestSimpleDeque {
|
|
|
|
|
|
/**
|
|
* On ne peut pas ajouter avec addFirst l'élément null
|
|
* [0.5 point]
|
|
*/
|
|
@Test
|
|
public void addFirstNull(){
|
|
MinimalDeque<String> d = new SimpleDeque<String>();
|
|
|
|
d.addFirst(null);
|
|
d.contains(null);
|
|
}
|
|
|
|
/**
|
|
* On ne peut pas ajouter avec addLast l'élément null
|
|
* [0.5 point]
|
|
*/
|
|
@Test
|
|
public void addLastNull(){
|
|
|
|
}
|
|
|
|
/**
|
|
* Un deque sans élément est vide.
|
|
* [0.5 point]
|
|
*/
|
|
@Test
|
|
public void addNoneIsEmpty(){
|
|
|
|
}
|
|
|
|
/**
|
|
* Un deque avec 1 élément n'est pas vide.
|
|
* [0.5 point]
|
|
*/
|
|
@Test
|
|
public void addOneIsNotEmpty(){
|
|
|
|
}
|
|
|
|
|
|
/**
|
|
* Dans un deque vide ajouter devant "ga" "bu" "zo" "meu" devant puis enlever à la fin me redonne les mêmes string (identiques aux précédents) et dans le même ordre.
|
|
* [1 point]
|
|
*/
|
|
@Test
|
|
public void pasDeResquilleur(){
|
|
MinimalDeque<String> d = new SimpleDeque<String>();
|
|
String ga = "ga";
|
|
String bu = "bu";
|
|
String zo = "zo";
|
|
String meu = "meu";
|
|
|
|
}
|
|
|
|
/**
|
|
* Dans un deque vide ajouter "ga" "bu" "zo" "meu" derrière puis enlever au débutr me redonne les mêmes string (identiques aux précédents) et dans le même ordre.
|
|
* [1 point]
|
|
*/
|
|
@Test
|
|
public void pasDeResquilleurQuantique(){
|
|
|
|
}
|
|
|
|
/**
|
|
* On ne peut pas enlever d'élément devant d'un deque vide.
|
|
* [1 point]
|
|
*/
|
|
@Test
|
|
public void removeFirstFromEmpty(){
|
|
|
|
}
|
|
|
|
/**
|
|
* On ne peut pas enlever d'élément derrière d'un deque vide.
|
|
* [1 point]
|
|
*/
|
|
@Test
|
|
public void removeLastFromEmpty(){
|
|
|
|
}
|
|
|
|
/**
|
|
* Dans un deque vide ajouter "ga" puis enlever me redonne le même string que ajouter ou enlever soit devant oui derrière.
|
|
* [2 point]
|
|
*/
|
|
@Test
|
|
public void mangerLaBananeParLesDeuxBouts(){
|
|
MinimalDeque<String> d = new SimpleDeque<String>();
|
|
String ga = "ga";
|
|
|
|
}
|
|
|
|
|
|
/**
|
|
* Invariant de taille
|
|
* Lancer un nombre entier aléatoire N compris entre 100 et 1000 (inclus).
|
|
*
|
|
* Ajouter au hasard, devant ou derrière N éléments tirés au hasard dans {"Ga", "bu", "zo", "meu"}.
|
|
*
|
|
* Enlever au hasard, devant ou derrière N éléments.
|
|
*
|
|
* Vérifier finalement que la Deque est vide.
|
|
*
|
|
* [4 point]
|
|
*/
|
|
@Test
|
|
public void invariantTaille(){
|
|
MinimalDeque<String> d = new SimpleDeque<String>();
|
|
String[] s = {"ga","bu","zo","meu"};
|
|
Random rd = new Random();
|
|
|
|
int N = rd.nextInt(42)+4;
|
|
|
|
// rd.nextBoolean())
|
|
|
|
|
|
// s[rd.nextInt(4)])
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|