@@ -181,15 +181,18 @@ def test_variable_metadata(self, zarr_tmp: Path) -> None:
181181 """Metadata reading tests."""
182182 ds = open_mdio (zarr_tmp )
183183 expected_attrs = {
184- "count" : 97354860 ,
185- "sum" : - 8594.551666259766 ,
186- "sumSquares" : 40571291.6875 ,
184+ "count" : 46854270 ,
185+ "sum" : - 8594.551589292674 ,
186+ "sumSquares" : 40571285.42351971 ,
187187 "min" : - 8.375323295593262 ,
188188 "max" : 7.723702430725098 ,
189189 "histogram" : {"counts" : [], "binCenters" : []},
190190 }
191- actual_attrs_json = json .loads (ds ["amplitude" ].attrs ["statsV1" ])
192- assert actual_attrs_json == expected_attrs
191+ actual_attrs = json .loads (ds ["amplitude" ].attrs ["statsV1" ])
192+ assert actual_attrs .keys () == expected_attrs .keys ()
193+ actual_attrs .pop ("histogram" )
194+ expected_attrs .pop ("histogram" )
195+ np .testing .assert_allclose (list (actual_attrs .values ()), list (expected_attrs .values ()))
193196
194197 def test_grid (self , zarr_tmp : Path , teapot_segy_spec : SegySpec ) -> None :
195198 """Test validating MDIO variables."""
@@ -237,23 +240,22 @@ def test_inline_reads(self, zarr_tmp: Path) -> None:
237240 """Read and compare every 75 inlines' mean and std. dev."""
238241 ds = open_mdio (zarr_tmp )
239242 inlines = ds ["amplitude" ][::75 , :, :]
240- mean , std = inlines .mean (), inlines .std ()
241- npt .assert_allclose ([mean , std ], [1.0555277e-04 , 6.0027051e-01 ])
243+ mean , std = inlines .mean (dtype = "float64" ), inlines .std (dtype = "float64" )
244+ npt .assert_allclose ([mean , std ], [0.00010555267 , 0.60027058412 ]) # 11 precision
242245
243246 def test_crossline_reads (self , zarr_tmp : Path ) -> None :
244247 """Read and compare every 75 crosslines' mean and std. dev."""
245248 ds = open_mdio (zarr_tmp )
246249 xlines = ds ["amplitude" ][:, ::75 , :]
247- mean , std = xlines .mean (), xlines .std ()
248-
249- npt .assert_allclose ([mean , std ], [- 5.0329847e-05 , 5.9406823e-01 ])
250+ mean , std = xlines .mean (dtype = "float64" ), xlines .std (dtype = "float64" )
251+ npt .assert_allclose ([mean , std ], [- 5.03298501828e-05 , 0.59406807762 ]) # 11 precision
250252
251253 def test_zslice_reads (self , zarr_tmp : Path ) -> None :
252254 """Read and compare every 225 z-slices' mean and std. dev."""
253255 ds = open_mdio (zarr_tmp )
254256 slices = ds ["amplitude" ][:, :, ::225 ]
255- mean , std = slices .mean (), slices .std ()
256- npt .assert_allclose ([mean , std ], [0.005236923 , 0.61279935 ])
257+ mean , std = slices .mean (dtype = "float64" ), slices .std (dtype = "float64" )
258+ npt .assert_allclose ([mean , std ], [0.00523692339 , 0.61279943571 ]) # 11 precision
257259
258260 @pytest .mark .dependency ("test_3d_import" )
259261 def test_3d_export (
0 commit comments