def test_set_service_direct(self): """Test setting service directly.""" exp_data = DbExperimentData(experiment_type="qiskit_test") self.assertIsNone(exp_data.service) mock_service = mock.MagicMock() exp_data.service = mock_service self.assertEqual(mock_service, exp_data.service) with self.assertRaises(DbExperimentDataError): exp_data.service = mock_service
def test_save(self): """Test saving all experiment related data.""" exp_data = DbExperimentData(backend=self.backend, experiment_type="qiskit_test") service = mock.create_autospec(DatabaseServiceV1, instance=True) exp_data.add_figures(str.encode("hello world")) analysis_result = mock.MagicMock() exp_data.add_analysis_results(analysis_result) exp_data.service = service exp_data.save() service.create_experiment.assert_called_once() service.create_figure.assert_called_once() analysis_result.save.assert_called_once()
def test_save_metadata(self): """Test saving experiment metadata.""" exp_data = DbExperimentData(backend=self.backend, experiment_type="qiskit_test") service = mock.create_autospec(DatabaseServiceV1, instance=True) exp_data.service = service exp_data.save_metadata() service.create_experiment.assert_called_once() _, kwargs = service.create_experiment.call_args self.assertEqual(exp_data.experiment_id, kwargs["experiment_id"]) exp_data.save_metadata() service.update_experiment.assert_called_once() _, kwargs = service.update_experiment.call_args self.assertEqual(exp_data.experiment_id, kwargs["experiment_id"])