def test_update_analysis_result(self):
        """Test updating an analysis result."""
        new_result = self._create_analysis_result()
        original_type = new_result.type
        new_result.quality = ResultQuality.HUMAN_BAD
        new_fit = Fit(new_result.fit.value*2, new_result.fit.variance*2)
        new_result.fit = new_fit
        self.provider.experiment.update_analysis_result(new_result)

        rresult = self.provider.experiment.retrieve_analysis_result(new_result.uuid)
        sub_tests = [(new_result, 'local result'), (rresult, 'retrieved result')]
        for res, name in sub_tests:
            with self.subTest(sub_test_name=name):
                self.assertEqual(res.fit.to_dict(), new_fit.to_dict())
                self.assertEqual(res.type, original_type)
                self.assertEqual(res.quality, ResultQuality.HUMAN_BAD)
                self.assertTrue(res.updated_datetime.tzinfo)
Пример #2
0
 def _create_analysis_result(self):
     device_comp = self.device_components[0]
     new_experiment = self._create_experiment(device_comp.backend_name)
     fit = Fit(41.456, 4.051)
     new_result = AnalysisResult(experiment_uuid=new_experiment.uuid,
                                 fit=fit,
                                 result_type="T1",
                                 device_components=[device_comp.type],
                                 tags=['qiskit-test'])
     self.provider.experiment.upload_analysis_result(new_result)
     self.results_to_delete.append(new_result.uuid)
     return new_result