Statistiques
| Révision:

fr_b02 / petri / src / main / NetworkTest.java @ 7

Historique | Voir | Annoter | Télécharger (2,928 ko)

1 4 a19coudr
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 5 a19coudr
import main.Network.UndefinedIdentifier;
12 4 a19coudr
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 5 a19coudr
        void testAddArc() throws UndefinedToken, UndefinedIdentifier {
38 4 a19coudr
                Network n= new Network();
39 5 a19coudr
40 4 a19coudr
                ArcOutering ao =new ArcOutering(new Place(3), 4);
41
                n.addTransition();
42
                n.addPlace(3);
43 5 a19coudr
                //test case correct identifier
44 4 a19coudr
                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 5 a19coudr
                //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 4 a19coudr
        }
54
55
        @Test
56 5 a19coudr
        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 4 a19coudr
63
        }
64
65
        @Test
66 5 a19coudr
        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 4 a19coudr
        }
75
76
        @Test
77
        void testDeleteTransition() {
78 5 a19coudr
                Network n= new Network();
79
                n.addTransition();
80
                n.deleteTransition(n.getListTransition().get(0));
81
                assertEquals(0,n.getListTransition().size());
82 4 a19coudr
        }
83
84
        @Test
85 5 a19coudr
        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 4 a19coudr
        }
101
102
}