@@ -18,14 +18,16 @@ def compare_obs(
18
18
test .assertEqual (obs1 .data .metric_names , obs2 .data .metric_names )
19
19
test .assertTrue (np .array_equal (obs1 .data .means , obs2 .data .means ))
20
20
discrep = np .max (np .abs (obs1 .data .covariance - obs2 .data .covariance ))
21
- test .assertTrue (discrep <= discrepancy_tol )
22
- test .assertTrue (obs1 .features .parameters == obs2 .features .parameters )
21
+ test .assertLessEqual (discrep , discrepancy_tol )
22
+ test .assertEqual (obs1 .features .parameters , obs2 .features .parameters )
23
23
24
24
25
25
class MergeRepeatedMeasurementsTransformTest (TestCase ):
26
26
def testTransform (self ) -> None :
27
27
obs_feats1 = ObservationFeatures (parameters = {"a" : 0.0 })
28
- with self .assertRaises (RuntimeError ):
28
+ with self .assertRaisesRegex (
29
+ RuntimeError , "MergeRepeatedMeasurements requires observations"
30
+ ):
29
31
# test that observations are required
30
32
MergeRepeatedMeasurements ()
31
33
# test nan in covariance
@@ -37,7 +39,9 @@ def testTransform(self) -> None:
37
39
),
38
40
features = obs_feats1 ,
39
41
)
40
- with self .assertRaises (NotImplementedError ):
42
+ with self .assertRaisesRegex (
43
+ NotImplementedError , "All metrics must have noise observations."
44
+ ):
41
45
MergeRepeatedMeasurements (observations = [observation ])
42
46
# test full covariance
43
47
observation = Observation (
@@ -48,7 +52,9 @@ def testTransform(self) -> None:
48
52
),
49
53
features = obs_feats1 ,
50
54
)
51
- with self .assertRaises (NotImplementedError ):
55
+ with self .assertRaisesRegex (
56
+ NotImplementedError , "Only independent metrics are currently supported."
57
+ ):
52
58
MergeRepeatedMeasurements (observations = [observation ])
53
59
54
60
# test noiseless, different means
@@ -71,7 +77,11 @@ def testTransform(self) -> None:
71
77
features = obs_feats1 ,
72
78
),
73
79
]
74
- with self .assertRaises (ValueError ):
80
+ with self .assertRaisesRegex (
81
+ ValueError ,
82
+ "All repeated arms with noiseless measurements "
83
+ "must have the same means." ,
84
+ ):
75
85
MergeRepeatedMeasurements (observations = observations )
76
86
# test noiseless, same means
77
87
observations = [
0 commit comments