Beispiel #1
0
    def test_variables_reset(self):
        w = PythonFileInterpreter(content='x=\'this is a string\'\r\nprint(x)')
        w.execute_async()
        self.assertTrue('x' in w._presenter.model._globals_ns.keys())

        w._presenter.is_executing = False
        w._presenter.view.editor.hasSelectedText = mock.MagicMock()
        w._presenter.view.editor.hasSelectedText.return_value = True
        w._presenter.view.editor.selectedText = mock.MagicMock()
        w._presenter.view.editor.selectedText.return_value = 'print(x)'
        w._presenter.view.editor.getSelection = mock.MagicMock()
        w._presenter.view.editor.getSelection.return_value = [0, 0, 0, 0]
        w.execute_async()
        self.assertTrue('x' in w._presenter.model._globals_ns.keys())

        w._presenter.view.editor.text = mock.MagicMock()
        w._presenter.view.editor.text.return_value = 'print(x)'
        w._presenter.is_executing = False
        w._presenter.view.editor.hasSelectedText.return_value = False
        w.execute_async()
        self.assertFalse('x' in w._presenter.model._globals_ns.keys())
Beispiel #2
0
 def test_successful_execution(self):
     w = PythonFileInterpreter()
     w.editor.setText("x = 1 + 2")
     w.execute_async()
     self.assertTrue("Status: Idle", w.status.currentMessage())
Beispiel #3
0
 def test_empty_code_does_nothing_on_exec(self):
     w = PythonFileInterpreter()
     w._presenter.model.execute_async = mock.MagicMock()
     w.execute_async()
     w._presenter.model.execute_async.assert_not_called()
     self.assertTrue("Status: Idle", w.status.currentMessage())