def _run_async_code(self, code, filename=None, line_no=0): executor = PythonCodeExecution() recv = Receiver() executor.sig_exec_success.connect(recv.on_success) executor.sig_exec_error.connect(recv.on_error) task = executor.execute_async(code, line_no, filename) task.join() QCoreApplication.sendPostedEvents() return executor, recv
def test_connected_receiver_receives_text(self): with patch("sys.stdout") as mock_stdout: mock_stdout.fileno.return_value = -1 recv = Receiver() writer = WriteToSignal(mock_stdout) writer.sig_write_received.connect(recv.capture_text) txt = "I expect to see this" writer.write(txt) QCoreApplication.sendPostedEvents() self.assertEqual(txt, recv.captured_txt) mock_stdout.fileno.assert_called_once_with()