Statistiques
| Révision:

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
}