def _create_experiment_data(self):
     """Create an experiment data."""
     exp_data = DbExperimentData(backend=self.backend,
                                 experiment_type="qiskit_test")
     exp_data.save()
     self.experiments_to_delete.append(exp_data.experiment_id)
     return exp_data
    def test_new_experiment_data(self):
        """Test creating a new experiment data."""
        metadata = {"complex": 2 + 3j, "numpy": np.zeros(2)}
        exp_data = DbExperimentData(
            backend=self.backend,
            experiment_type="qiskit_test",
            tags=["foo", "bar"],
            share_level="hub",
            metadata=metadata,
            notes="some notes",
        )

        job_ids = []
        for _ in range(2):
            job = self._run_circuit()
            exp_data.add_jobs(job)
            job_ids.append(job.job_id())

        exp_data.save()
        self.experiments_to_delete.append(exp_data.experiment_id)

        credentials = self.backend.provider().credentials
        rexp = DbExperimentData.load(exp_data.experiment_id, self.experiment)
        self._verify_experiment_data(exp_data, rexp)
        self.assertEqual(credentials.hub, rexp.hub)  # pylint: disable=no-member
        self.assertEqual(credentials.group, rexp.group)  # pylint: disable=no-member
        self.assertEqual(credentials.project, rexp.project)  # pylint: disable=no-member
    def test_set_service_job(self):
        """Test setting service with a job."""
        exp_data = DbExperimentData(experiment_type="qiskit_test")
        job = self._run_circuit()
        exp_data.add_jobs(job)
        exp_data.save()

        rexp = self.experiment.experiment(exp_data.experiment_id)
        self.assertEqual([job.job_id()], rexp["job_ids"])
Exemplo n.º 4
0
 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()