def test_run_raises_error_no_result(self): api = MockApiClient() with patch('sys.stdout', new_callable=io.StringIO): backend = QIBackend(quantum_inspire_api=api, verbose=2) backend.qasm = "_" backend._measured_ids = [0, 1] backend.main_engine = MagicMock() backend.main_engine.mapper.current_mapping = [0, 1] result_mock = MagicMock() result_mock.get.return_value = {} api.execute_qasm.return_value = result_mock self.assertRaisesRegex(ProjectQBackendError, 'raw_text', backend._run) api.execute_qasm.assert_called_once()
def test_run_has_correct_output(self): api = MockApiClient() with patch('sys.stdout', new_callable=io.StringIO) as std_mock: backend = QIBackend(quantum_inspire_api=api, verbose=2) backend.qasm = "_" backend._measured_ids = [0] backend.main_engine = MagicMock() backend.main_engine.mapper.current_mapping = [0, 1] backend._run() std_output = std_mock.getvalue() actual = backend._quantum_inspire_result api.execute_qasm.assert_called_once() self.assertEqual(api.execute_qasm(), actual) self.assertTrue(backend._clear)