(self)
| 156 | |
| 157 | |
| 158 | def testBreak(self): |
| 159 | self.maxDiff = None |
| 160 | splootFile = splootFromPython(''' |
| 161 | for char in 'hello': |
| 162 | if char == 'l': |
| 163 | break |
| 164 | print(char) |
| 165 | print('end') |
| 166 | ''') |
| 167 | f = io.StringIO() |
| 168 | f.write = wrapStdout(f.write) |
| 169 | with contextlib.redirect_stdout(f): |
| 170 | cap, _ = executePythonFile(splootFile) |
| 171 | |
| 172 | self.assertEqual(cap, { |
| 173 | 'root': { |
| 174 | 'type': 'PYTHON_FILE', |
| 175 | 'data': { |
| 176 | 'body': [ |
| 177 | { |
| 178 | 'type': 'PYTHON_FOR_LOOP', |
| 179 | 'data': {'frames': [ |
| 180 | { |
| 181 | 'type': 'PYTHON_FOR_LOOP_ITERATION', |
| 182 | 'data':{ |
| 183 | 'iterable': [{'data': {'result': 'h', 'resultType': 'str'}}], |
| 184 | 'block': [{ |
| 185 | 'type': 'PYTHON_IF_STATEMENT', |
| 186 | 'data': {'condition': [{'data': {'result': 'False', 'resultType':'bool'}}]}, |
| 187 | },{ |
| 188 | 'type': 'PYTHON_EXPRESSION', |
| 189 | 'data': {'result': 'None', 'resultType': 'NoneType'}, |
| 190 | 'sideEffects': [{'type': 'stdout', 'value':'h'}, {'type': 'stdout', 'value':'\n'}] |
| 191 | }], |
| 192 | }, |
| 193 | }, |
| 194 | { |
| 195 | 'type': 'PYTHON_FOR_LOOP_ITERATION', |
| 196 | 'data':{ |
| 197 | 'iterable': [{'data': {'result': 'e', 'resultType': 'str'}}], |
| 198 | 'block': [{ |
| 199 | 'type': 'PYTHON_IF_STATEMENT', |
| 200 | 'data': {'condition': [{'data': {'result': 'False', 'resultType':'bool'}}]}, |
| 201 | },{ |
| 202 | 'type': 'PYTHON_EXPRESSION', |
| 203 | 'data': {'result': 'None', 'resultType': 'NoneType'}, |
| 204 | 'sideEffects': [{'type': 'stdout', 'value':'e'}, {'type': 'stdout', 'value':'\n'}] |
| 205 | }], |
| 206 | }, |
| 207 | }, |
| 208 | { |
| 209 | 'type': 'PYTHON_FOR_LOOP_ITERATION', |
| 210 | 'data':{ |
| 211 | 'iterable': [{'data': {'result': 'l', 'resultType': 'str'}}], |
| 212 | 'block': [{ |
| 213 | 'type': 'PYTHON_IF_STATEMENT', |
| 214 | 'data': { |
| 215 | 'condition': [{'data': {'result': 'True', 'resultType':'bool'}}], |
nothing calls this directly
no test coverage detected