|
28 | 28 | # OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
29 | 29 | # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
30 | 30 |
|
| 31 | +from types import SimpleNamespace |
31 | 32 | import unittest |
32 | 33 |
|
33 | 34 | try: |
34 | | - from robotmbt.visualise.models import * |
| 35 | + from robotmbt.visualise.models import ScenarioInfo, StateInfo, TraceInfo, ModelSpace |
35 | 36 |
|
36 | 37 | VISUALISE = True |
37 | 38 | except ImportError: |
38 | 39 | VISUALISE = False |
39 | 40 |
|
40 | 41 | if VISUALISE: |
41 | | - class TestVisualiseModels(unittest.TestCase): |
42 | | - """ |
43 | | - Contains tests for robotmbt/visualise/models.py |
44 | | - """ |
45 | | - |
46 | | - """ |
47 | | - Class: ScenarioInfo |
48 | | - """ |
49 | | - |
50 | | - def test_scenarioInfo_str(self): |
51 | | - si = ScenarioInfo('test') |
52 | | - self.assertEqual(si.name, 'test') |
53 | | - self.assertEqual(si.src_id, 'test') |
54 | | - |
55 | | - def test_scenarioInfo_Scenario(self): |
56 | | - s = Scenario('test') |
57 | | - s.src_id = 0 |
58 | | - si = ScenarioInfo(s) |
| 42 | + class TestScenarioInfo(unittest.TestCase): |
| 43 | + def test_scenarioInfo_constructor(self): |
| 44 | + scenariostub = SimpleNamespace(name='test', src_id=0) |
| 45 | + si = ScenarioInfo(scenariostub) |
59 | 46 | self.assertEqual(si.name, 'test') |
60 | 47 | self.assertEqual(si.src_id, 0) |
61 | 48 |
|
@@ -99,11 +86,10 @@ def test_split_name_multiple_words_need_split(self): |
99 | 86 |
|
100 | 87 | self.assertEqual(result.replace('\n', ' '), name) |
101 | 88 | self.assertIn('\n', result) |
| 89 | + self.assertLessEqual(max([len(line) for line in result.split('\n')]), 20) |
102 | 90 |
|
103 | | - """ |
104 | | - Class: StateInfo |
105 | | - """ |
106 | 91 |
|
| 92 | + class TestStateInfo(unittest.TestCase): |
107 | 93 | def test_stateInfo_empty(self): |
108 | 94 | s = StateInfo(ModelSpace()) |
109 | 95 | self.assertEqual(str(s), '') |
@@ -135,81 +121,82 @@ def test_stateInfo_prop_val_empty(self): |
135 | 121 | self.assertTrue('value=1' in str(s)) |
136 | 122 | self.assertFalse('prop2:' in str(s)) |
137 | 123 |
|
138 | | - """ |
139 | | - Class: TraceInfo |
140 | | - """ |
141 | 124 |
|
| 125 | + class TestTraceInfo(unittest.TestCase): |
142 | 126 | def test_trace_info_update_normal(self): |
143 | 127 | info = TraceInfo() |
| 128 | + scenariostub = SimpleNamespace(name='test', src_id=0) |
144 | 129 |
|
145 | 130 | self.assertEqual(len(info.current_trace), 0) |
146 | 131 | self.assertEqual(len(info.all_traces), 0) |
147 | 132 |
|
148 | | - info.update_trace(ScenarioInfo('test'), StateInfo._create_state_with_prop('prop', [('value', 1)]), 1) |
| 133 | + info.update_trace(ScenarioInfo(scenariostub), StateInfo._create_state_with_prop('prop', [('value', 1)]), 1) |
149 | 134 |
|
150 | 135 | self.assertEqual(len(info.current_trace), 1) |
151 | 136 | self.assertEqual(len(info.all_traces), 0) |
152 | 137 |
|
153 | | - info.update_trace(ScenarioInfo('test'), StateInfo._create_state_with_prop('prop', [('value', 2)]), 2) |
| 138 | + info.update_trace(ScenarioInfo(scenariostub), StateInfo._create_state_with_prop('prop', [('value', 2)]), 2) |
154 | 139 |
|
155 | 140 | self.assertEqual(len(info.current_trace), 2) |
156 | 141 | self.assertEqual(len(info.all_traces), 0) |
157 | 142 |
|
158 | | - info.update_trace(ScenarioInfo('test'), StateInfo._create_state_with_prop('prop', [('value', 3)]), 3) |
| 143 | + info.update_trace(ScenarioInfo(scenariostub), StateInfo._create_state_with_prop('prop', [('value', 3)]), 3) |
159 | 144 |
|
160 | 145 | self.assertEqual(len(info.current_trace), 3) |
161 | 146 | self.assertEqual(len(info.all_traces), 0) |
162 | 147 |
|
163 | 148 | def test_trace_info_update_backtrack(self): |
164 | 149 | info = TraceInfo() |
| 150 | + scenariostub = SimpleNamespace(name='test', src_id=0) |
165 | 151 |
|
166 | 152 | self.assertEqual(len(info.current_trace), 0) |
167 | 153 | self.assertEqual(len(info.all_traces), 0) |
168 | 154 |
|
169 | | - info.update_trace(ScenarioInfo('test'), StateInfo._create_state_with_prop('prop', [('value', 1)]), 1) |
| 155 | + info.update_trace(ScenarioInfo(scenariostub), StateInfo._create_state_with_prop('prop', [('value', 1)]), 1) |
170 | 156 |
|
171 | 157 | self.assertEqual(len(info.current_trace), 1) |
172 | 158 | self.assertEqual(len(info.all_traces), 0) |
173 | 159 |
|
174 | | - info.update_trace(ScenarioInfo('test'), StateInfo._create_state_with_prop('prop', [('value', 2)]), 2) |
| 160 | + info.update_trace(ScenarioInfo(scenariostub), StateInfo._create_state_with_prop('prop', [('value', 2)]), 2) |
175 | 161 |
|
176 | 162 | self.assertEqual(len(info.current_trace), 2) |
177 | 163 | self.assertEqual(len(info.all_traces), 0) |
178 | 164 |
|
179 | | - info.update_trace(ScenarioInfo('test'), StateInfo._create_state_with_prop('prop', [('value', 3)]), 3) |
| 165 | + info.update_trace(ScenarioInfo(scenariostub), StateInfo._create_state_with_prop('prop', [('value', 3)]), 3) |
180 | 166 |
|
181 | 167 | self.assertEqual(len(info.current_trace), 3) |
182 | 168 | self.assertEqual(len(info.all_traces), 0) |
183 | 169 |
|
184 | | - info.update_trace(ScenarioInfo('test'), StateInfo._create_state_with_prop('prop', [('value', 2)]), 2) |
| 170 | + info.update_trace(ScenarioInfo(scenariostub), StateInfo._create_state_with_prop('prop', [('value', 2)]), 2) |
185 | 171 |
|
186 | 172 | self.assertEqual(len(info.current_trace), 2) |
187 | 173 | self.assertEqual(len(info.all_traces), 1) |
188 | 174 | self.assertEqual(len(info.all_traces[0]), 3) |
189 | 175 |
|
190 | | - info.update_trace(ScenarioInfo('test'), StateInfo._create_state_with_prop('prop', [('value', 1)]), 1) |
| 176 | + info.update_trace(ScenarioInfo(scenariostub), StateInfo._create_state_with_prop('prop', [('value', 1)]), 1) |
191 | 177 |
|
192 | 178 | self.assertEqual(len(info.current_trace), 1) |
193 | 179 | self.assertEqual(len(info.all_traces), 1) |
194 | 180 | self.assertEqual(len(info.all_traces[0]), 3) |
195 | 181 |
|
196 | | - info.update_trace(ScenarioInfo('test'), StateInfo._create_state_with_prop('prop', [('value', 4)]), 2) |
| 182 | + info.update_trace(ScenarioInfo(scenariostub), StateInfo._create_state_with_prop('prop', [('value', 4)]), 2) |
197 | 183 |
|
198 | 184 | self.assertEqual(len(info.current_trace), 2) |
199 | 185 | self.assertEqual(len(info.all_traces), 1) |
200 | 186 | self.assertEqual(len(info.all_traces[0]), 3) |
201 | 187 |
|
202 | | - info.update_trace(ScenarioInfo('test'), StateInfo._create_state_with_prop('prop', [('value', 5)]), 3) |
| 188 | + info.update_trace(ScenarioInfo(scenariostub), StateInfo._create_state_with_prop('prop', [('value', 5)]), 3) |
203 | 189 |
|
204 | 190 | self.assertEqual(len(info.current_trace), 3) |
205 | 191 | self.assertEqual(len(info.all_traces), 1) |
206 | 192 | self.assertEqual(len(info.all_traces[0]), 3) |
207 | 193 |
|
208 | | - info.update_trace(ScenarioInfo('test'), StateInfo._create_state_with_prop('prop', [('value', 6)]), 4) |
| 194 | + info.update_trace(ScenarioInfo(scenariostub), StateInfo._create_state_with_prop('prop', [('value', 6)]), 4) |
209 | 195 |
|
210 | 196 | self.assertEqual(len(info.current_trace), 4) |
211 | 197 | self.assertEqual(len(info.all_traces), 1) |
212 | 198 | self.assertEqual(len(info.all_traces[0]), 3) |
213 | 199 |
|
| 200 | + |
214 | 201 | if __name__ == '__main__': |
215 | 202 | unittest.main() |
0 commit comments