fr_b02 / petri / src / main / NetworkTest.java @ 5
Historique | Voir | Annoter | Télécharger (2,928 ko)
1 |
package main; |
---|---|
2 |
|
3 |
import static org.junit.jupiter.api.Assertions.*; |
4 |
|
5 |
import org.junit.jupiter.api.Test; |
6 |
|
7 |
import arcElement.ArcOutering; |
8 |
import element.Place; |
9 |
import element.Place.UndefinedToken; |
10 |
import element.Transition; |
11 |
import main.Network.UndefinedIdentifier; |
12 |
|
13 |
class NetworkTest { |
14 |
|
15 |
@Test
|
16 |
void testNetwork() {
|
17 |
Network n= new Network();
|
18 |
assertEquals(Network.class, n.getClass()); |
19 |
} |
20 |
|
21 |
@Test
|
22 |
void testAddTransition() throws UndefinedToken { |
23 |
Network n= new Network();
|
24 |
n.addTransition(); |
25 |
assertEquals(1,n.getListTransition().size());
|
26 |
assertEquals(Transition.class, n.getListTransition().get(0).getClass());
|
27 |
} |
28 |
|
29 |
@Test
|
30 |
void testAddPlace() throws UndefinedToken { |
31 |
Network n= new Network();
|
32 |
n.addPlace(3);
|
33 |
assertEquals(1,n.getPlaceList().size());
|
34 |
assertEquals(Place.class, n.getPlaceList().get(0).getClass()); }
|
35 |
|
36 |
@Test
|
37 |
void testAddArc() throws UndefinedToken, UndefinedIdentifier { |
38 |
Network n= new Network();
|
39 |
|
40 |
ArcOutering ao =new ArcOutering(new Place(3), 4); |
41 |
n.addTransition(); |
42 |
n.addPlace(3);
|
43 |
//test case correct identifier
|
44 |
n.addArc(n.getListTransition().get(0), n.getPlaceList().get(0), 4, Network.ArcOutering); |
45 |
assertEquals(n.getListTransition().get(0).getArcList().get(0).toString(), ao.toString()); |
46 |
//test case incorrect identifier
|
47 |
try {
|
48 |
n.addArc(n.getListTransition().get(0), n.getPlaceList().get(0), 4, 8); |
49 |
fail("the identifier cannot take this value");
|
50 |
}catch (UndefinedIdentifier e) {
|
51 |
} |
52 |
|
53 |
} |
54 |
|
55 |
@Test
|
56 |
void testDeleteArc() throws UndefinedIdentifier, UndefinedToken { |
57 |
Network n= new Network();
|
58 |
n.addPlace(3);
|
59 |
n.addTransition(); |
60 |
n.addArc(n.getListTransition().get(0), n.getPlaceList().get(0), 4, Network.ArcOutering); |
61 |
n.deleteArc(n.getListTransition().get(0).getArcList().get(0)); |
62 |
|
63 |
} |
64 |
|
65 |
@Test
|
66 |
void testDeletePlace() throws UndefinedToken, UndefinedIdentifier { |
67 |
Network n= new Network();
|
68 |
n.addPlace(3);
|
69 |
n.addTransition(); |
70 |
n.addArc(n.getListTransition().get(0), n.getPlaceList().get(0), 4, Network.ArcOutering); |
71 |
n.deletePlace(n.getPlaceList().get(0));
|
72 |
assertEquals(0,n.getPlaceList().size());
|
73 |
assertEquals(0,n.getListTransition().get(0).getArcList().size()); |
74 |
} |
75 |
|
76 |
@Test
|
77 |
void testDeleteTransition() {
|
78 |
Network n= new Network();
|
79 |
n.addTransition(); |
80 |
n.deleteTransition(n.getListTransition().get(0));
|
81 |
assertEquals(0,n.getListTransition().size());
|
82 |
} |
83 |
|
84 |
@Test
|
85 |
void testFire() throws UndefinedToken, UndefinedIdentifier { |
86 |
Network n= new Network();
|
87 |
n.addPlace(3);
|
88 |
n.addTransition(); |
89 |
//test when the transition is able
|
90 |
n.addArc(n.getListTransition().get(0), n.getPlaceList().get(0), 4, Network.ArcEntering); |
91 |
n.fire(n.getListTransition().get(0));
|
92 |
assertEquals(7, n.getPlaceList().get(0).getToken()); |
93 |
Network n1= new Network();
|
94 |
n1.addPlace(3);
|
95 |
n1.addTransition(); |
96 |
//test when the transition is not able
|
97 |
n1.addArc(n1.getListTransition().get(0), n1.getPlaceList().get(0), 4, Network.ArcOutering); |
98 |
n1.fire(n1.getListTransition().get(0));
|
99 |
assertEquals(3, n1.getPlaceList().get(0).getToken()); |
100 |
} |
101 |
|
102 |
} |