Parcourir la source

update tests for code evolution (config, logger)

Bastien Sevajol il y a 7 ans
Parent
révision
09be8fa91d
3 fichiers modifiés avec 45 ajouts et 23 suppressions
  1. 12 4
      tests/test_life_game.py
  2. 15 5
      tests/test_terminals.py
  3. 18 14
      tests/test_xyz.py

+ 12 - 4
tests/test_life_game.py Voir le fichier

3
 from sandbox.life_game.simulation import Cell
3
 from sandbox.life_game.simulation import Cell
4
 from sandbox.life_game.simulation import Empty
4
 from sandbox.life_game.simulation import Empty
5
 from sandbox.life_game.utils import get_subjects_from_str_representation
5
 from sandbox.life_game.utils import get_subjects_from_str_representation
6
+from synergine2.config import Config
6
 from synergine2.cycle import CycleManager
7
 from synergine2.cycle import CycleManager
7
-from synergine2.simulation import Simulation
8
+from synergine2.log import SynergineLogger
8
 from synergine2.xyz import XYZSubjects
9
 from synergine2.xyz import XYZSubjects
10
+from synergine2.xyz import XYZSimulation
9
 from synergine2.xyz_utils import get_str_representation_from_positions
11
 from synergine2.xyz_utils import get_str_representation_from_positions
10
 from tests import BaseTest
12
 from tests import BaseTest
11
 from tests import str_kwargs
13
 from tests import str_kwargs
30
 
32
 
31
 class TestSimpleSimulation(LifeGameBaseTest):
33
 class TestSimpleSimulation(LifeGameBaseTest):
32
     def test_cycles_evolution(self):
34
     def test_cycles_evolution(self):
33
-        simulation = Simulation()
35
+        simulation = XYZSimulation(Config())
34
         subjects = self._get_subjects(simulation)
36
         subjects = self._get_subjects(simulation)
35
         simulation.subjects = subjects
37
         simulation.subjects = subjects
36
 
38
 
37
         cycle_manager = CycleManager(
39
         cycle_manager = CycleManager(
40
+            Config(),
41
+            SynergineLogger('test'),
38
             simulation=simulation,
42
             simulation=simulation,
39
         )
43
         )
40
 
44
 
70
             subjects,
74
             subjects,
71
         )
75
         )
72
 
76
 
73
-    def _get_subjects(self, simulation: Simulation):
77
+    def _get_subjects(self, simulation: XYZSimulation):
74
         cells = XYZSubjects(simulation=simulation)
78
         cells = XYZSubjects(simulation=simulation)
75
 
79
 
76
         for position in [
80
         for position in [
79
             (1, 0, 0),
83
             (1, 0, 0),
80
         ]:
84
         ]:
81
             cells.append(Cell(
85
             cells.append(Cell(
86
+                Config(),
82
                 simulation=simulation,
87
                 simulation=simulation,
83
                 position=position,
88
                 position=position,
84
             ))
89
             ))
98
             (2, 1, 0),
103
             (2, 1, 0),
99
         ]:
104
         ]:
100
             cells.append(Empty(
105
             cells.append(Empty(
106
+                Config(),
101
                 simulation=simulation,
107
                 simulation=simulation,
102
                 position=position,
108
                 position=position,
103
             ))
109
             ))
164
         """,
170
         """,
165
         ]
171
         ]
166
 
172
 
167
-        simulation = Simulation()
173
+        simulation = XYZSimulation(Config())
168
         subjects = get_subjects_from_str_representation(
174
         subjects = get_subjects_from_str_representation(
169
             str_representations[0],
175
             str_representations[0],
170
             simulation,
176
             simulation,
172
         simulation.subjects = subjects
178
         simulation.subjects = subjects
173
 
179
 
174
         cycle_manager = CycleManager(
180
         cycle_manager = CycleManager(
181
+            config=Config(),
182
+            logger=SynergineLogger('test'),
175
             simulation=simulation,
183
             simulation=simulation,
176
         )
184
         )
177
 
185
 

+ 15 - 5
tests/test_terminals.py Voir le fichier

1
 # coding: utf-8
1
 # coding: utf-8
2
 import time
2
 import time
3
 
3
 
4
+from synergine2.config import Config
5
+from synergine2.log import SynergineLogger
4
 from synergine2.simulation import Event
6
 from synergine2.simulation import Event
5
 from synergine2.terminals import Terminal
7
 from synergine2.terminals import Terminal
6
 from synergine2.terminals import TerminalPackage
8
 from synergine2.terminals import TerminalPackage
42
 class TestTerminals(BaseTest):
44
 class TestTerminals(BaseTest):
43
     def test_terminal_communications(self):
45
     def test_terminal_communications(self):
44
         terminals_manager = TerminalManager(
46
         terminals_manager = TerminalManager(
47
+            Config(),
48
+            SynergineLogger('test'),
45
             terminals=[
49
             terminals=[
46
-                MultiplyTerminal(),
50
+                MultiplyTerminal(Config(), SynergineLogger('test')),
47
             ]
51
             ]
48
         )
52
         )
49
         terminals_manager.start()
53
         terminals_manager.start()
67
 
71
 
68
     def test_terminals_communications(self):
72
     def test_terminals_communications(self):
69
         terminals_manager = TerminalManager(
73
         terminals_manager = TerminalManager(
74
+            Config(),
75
+            SynergineLogger('test'),
70
             terminals=[
76
             terminals=[
71
-                MultiplyTerminal(),
72
-                DivideTerminal(),
77
+                MultiplyTerminal(Config(), SynergineLogger('test')),
78
+                DivideTerminal(Config(), SynergineLogger('test')),
73
             ]
79
             ]
74
         )
80
         )
75
         terminals_manager.start()
81
         terminals_manager.start()
98
             pass
104
             pass
99
 
105
 
100
         terminals_manager = TerminalManager(
106
         terminals_manager = TerminalManager(
101
-            terminals=[ListenEverythingTerminal()]
107
+            Config(),
108
+            SynergineLogger('test'),
109
+            terminals=[ListenEverythingTerminal(Config(), SynergineLogger('test'))]
102
         )
110
         )
103
         terminals_manager.start()
111
         terminals_manager.start()
104
         terminals_manager.send(ValueTerminalPackage(value=42))
112
         terminals_manager.send(ValueTerminalPackage(value=42))
125
             subscribed_events = [AnOtherEvent]
133
             subscribed_events = [AnOtherEvent]
126
 
134
 
127
         terminals_manager = TerminalManager(
135
         terminals_manager = TerminalManager(
128
-            terminals=[ListenAnEventTerminal()]
136
+            Config(),
137
+            SynergineLogger('test'),
138
+            terminals=[ListenAnEventTerminal(Config(), SynergineLogger('test'))]
129
         )
139
         )
130
         terminals_manager.start()
140
         terminals_manager.start()
131
         terminals_manager.send(ValueTerminalPackage(value=42))
141
         terminals_manager.send(ValueTerminalPackage(value=42))

+ 18 - 14
tests/test_xyz.py Voir le fichier

1
 # coding: utf-8
1
 # coding: utf-8
2
 # -*- coding: utf-8 -*-
2
 # -*- coding: utf-8 -*-
3
+from synergine2.config import Config
3
 from synergine2.simulation import Subject
4
 from synergine2.simulation import Subject
4
-from synergine2.simulation import Subjects
5
-from synergine2.simulation import Simulation
6
 from synergine2.xyz import ProximitySubjectMechanism
5
 from synergine2.xyz import ProximitySubjectMechanism
6
+from synergine2.xyz import XYZSubjects
7
+from synergine2.xyz import XYZSimulation
7
 from synergine2.xyz import XYZSubjectMixin
8
 from synergine2.xyz import XYZSubjectMixin
8
 from synergine2.xyz_utils import get_positions_from_str_representation
9
 from synergine2.xyz_utils import get_positions_from_str_representation
9
 from synergine2.xyz_utils import get_str_representation_from_positions
10
 from synergine2.xyz_utils import get_str_representation_from_positions
21
 
22
 
22
 class TestXYZ(BaseTest):
23
 class TestXYZ(BaseTest):
23
     def test_proximity_mechanism_with_one(self):
24
     def test_proximity_mechanism_with_one(self):
24
-        simulation = Simulation()
25
-        subject = MySubject(simulation, position=(0, 0, 0))
26
-        other_subject = MySubject(simulation, position=(5, 0, 0))
25
+        simulation = XYZSimulation(Config())
26
+        subject = MySubject(Config(), simulation, position=(0, 0, 0))
27
+        other_subject = MySubject(Config(), simulation, position=(5, 0, 0))
27
 
28
 
28
-        simulation.subjects = Subjects(
29
+        simulation.subjects = XYZSubjects(
29
             [subject, other_subject],
30
             [subject, other_subject],
30
             simulation=simulation,
31
             simulation=simulation,
31
         )
32
         )
32
 
33
 
33
         proximity_mechanism = MyProximityMechanism(
34
         proximity_mechanism = MyProximityMechanism(
35
+            config=Config(),
34
             simulation=simulation,
36
             simulation=simulation,
35
             subject=subject,
37
             subject=subject,
36
         )
38
         )
46
         }] == proximity_mechanism.run()
48
         }] == proximity_mechanism.run()
47
 
49
 
48
     def test_proximity_mechanism_excluding(self):
50
     def test_proximity_mechanism_excluding(self):
49
-        simulation = Simulation()
50
-        subject = MySubject(simulation, position=(0, 0, 0))
51
-        other_subject = MySubject(simulation, position=(11, 0, 0))
51
+        simulation = XYZSimulation(Config())
52
+        subject = MySubject(Config(), simulation, position=(0, 0, 0))
53
+        other_subject = MySubject(Config(), simulation, position=(11, 0, 0))
52
 
54
 
53
-        simulation.subjects = Subjects(
55
+        simulation.subjects = XYZSubjects(
54
             [subject, other_subject],
56
             [subject, other_subject],
55
             simulation=simulation,
57
             simulation=simulation,
56
         )
58
         )
57
 
59
 
58
         proximity_mechanism = MyProximityMechanism(
60
         proximity_mechanism = MyProximityMechanism(
61
+            config=Config(),
59
             simulation=simulation,
62
             simulation=simulation,
60
             subject=subject,
63
             subject=subject,
61
         )
64
         )
68
         assert [] == proximity_mechanism.run()
71
         assert [] == proximity_mechanism.run()
69
 
72
 
70
     def test_proximity_mechanism_with_multiple(self):
73
     def test_proximity_mechanism_with_multiple(self):
71
-        simulation = Simulation()
72
-        subject = MySubject(simulation, position=(0, 0, 0))
74
+        simulation = XYZSimulation(Config())
75
+        subject = MySubject(Config(), simulation, position=(0, 0, 0))
73
         other_subjects = []
76
         other_subjects = []
74
 
77
 
75
         for i in range(3):
78
         for i in range(3):
76
-            other_subjects.append(MySubject(simulation, position=(i, i, 0)))
79
+            other_subjects.append(MySubject(Config(), simulation, position=(i, i, 0)))
77
 
80
 
78
-        simulation.subjects = Subjects([subject], simulation=simulation)
81
+        simulation.subjects = XYZSubjects([subject], simulation=simulation)
79
         simulation.subjects.extend(other_subjects)
82
         simulation.subjects.extend(other_subjects)
80
 
83
 
81
         proximity_mechanism = MyProximityMechanism(
84
         proximity_mechanism = MyProximityMechanism(
85
+            config=Config(),
82
             simulation=simulation,
86
             simulation=simulation,
83
             subject=subject,
87
             subject=subject,
84
         )
88
         )