@@ -191,7 +191,7 @@ def test_correlate01(self, xp):
191191
192192 @xfail_xp_backends ('cupy' , reason = "Differs by a factor of two?" )
193193 @skip_xp_backends ("jax.numpy" , reason = "output array is read-only." )
194- @skip_xp_backends ("dask.array" , reason = "wrong answer" )
194+ @xfail_xp_backends ("dask.array" , reason = "wrong answer" )
195195 def test_correlate01_overlap (self , xp ):
196196 array = xp .reshape (xp .arange (256 ), (16 , 16 ))
197197 weights = xp .asarray ([2 ])
@@ -534,7 +534,7 @@ def test_correlate22(self, dtype_array, dtype_output, xp):
534534 assert_array_almost_equal (output , expected )
535535
536536 @skip_xp_backends ("jax.numpy" , reason = "output array is read-only." )
537- @skip_xp_backends ("dask.array" , reason = "output array is read-only. " )
537+ @skip_xp_backends ("dask.array" , reason = "converts dask output array to numpy " )
538538 @pytest .mark .parametrize ('dtype_array' , types )
539539 @pytest .mark .parametrize ('dtype_output' , types )
540540 def test_correlate23 (self , dtype_array , dtype_output , xp ):
@@ -554,7 +554,7 @@ def test_correlate23(self, dtype_array, dtype_output, xp):
554554 assert_array_almost_equal (output , expected )
555555
556556 @skip_xp_backends ("jax.numpy" , reason = "output array is read-only." )
557- @skip_xp_backends ("dask.array" , reason = "output array is read-only. " )
557+ @skip_xp_backends ("dask.array" , reason = "converts dask output array to numpy " )
558558 @pytest .mark .parametrize ('dtype_array' , types )
559559 @pytest .mark .parametrize ('dtype_output' , types )
560560 def test_correlate24 (self , dtype_array , dtype_output , xp ):
@@ -575,7 +575,7 @@ def test_correlate24(self, dtype_array, dtype_output, xp):
575575 assert_array_almost_equal (output , tcov )
576576
577577 @skip_xp_backends ("jax.numpy" , reason = "output array is read-only." )
578- @skip_xp_backends ("dask.array" , reason = "output array is read-only. " )
578+ @skip_xp_backends ("dask.array" , reason = "converts dask output array to numpy " )
579579 @pytest .mark .parametrize ('dtype_array' , types )
580580 @pytest .mark .parametrize ('dtype_output' , types )
581581 def test_correlate25 (self , dtype_array , dtype_output , xp ):
@@ -881,7 +881,7 @@ def test_gauss06(self, xp):
881881 assert_array_almost_equal (output1 , output2 )
882882
883883 @skip_xp_backends ("jax.numpy" , reason = "output array is read-only." )
884- @skip_xp_backends ("dask.array" , reason = "wrong result " )
884+ @skip_xp_backends ("dask.array" , reason = "converts dask output array to numpy " )
885885 def test_gauss_memory_overlap (self , xp ):
886886 input = xp .arange (100 * 100 , dtype = xp .float32 )
887887 input = xp .reshape (input , (100 , 100 ))
@@ -1228,7 +1228,7 @@ def test_prewitt01(self, dtype, xp):
12281228 assert_array_almost_equal (t , output )
12291229
12301230 @skip_xp_backends ("jax.numpy" , reason = "output array is read-only." )
1231- @skip_xp_backends ("dask.array" , reason = "output array is read-only. " )
1231+ @skip_xp_backends ("dask.array" , reason = "converts dask output array to numpy " )
12321232 @pytest .mark .parametrize ('dtype' , types + complex_types )
12331233 def test_prewitt02 (self , dtype , xp ):
12341234 if is_torch (xp ) and dtype in ("uint16" , "uint32" , "uint64" ):
@@ -1291,7 +1291,7 @@ def test_sobel01(self, dtype, xp):
12911291 assert_array_almost_equal (t , output )
12921292
12931293 @skip_xp_backends ("jax.numpy" , reason = "output array is read-only." ,)
1294- @skip_xp_backends ("dask.array" , reason = "output array is read-only. " )
1294+ @skip_xp_backends ("dask.array" , reason = "converts dask output array to numpy " )
12951295 @pytest .mark .parametrize ('dtype' , types + complex_types )
12961296 def test_sobel02 (self , dtype , xp ):
12971297 if is_torch (xp ) and dtype in ("uint16" , "uint32" , "uint64" ):
@@ -1352,7 +1352,7 @@ def test_laplace01(self, dtype, xp):
13521352 assert_array_almost_equal (tmp1 + tmp2 , output )
13531353
13541354 @skip_xp_backends ("jax.numpy" , reason = "output array is read-only" ,)
1355- @skip_xp_backends ("dask.array" , reason = "output array is read-only. " )
1355+ @skip_xp_backends ("dask.array" , reason = "converts dask output array to numpy " )
13561356 @pytest .mark .parametrize ('dtype' ,
13571357 ["int32" , "float32" , "float64" ,
13581358 "complex64" , "complex128" ])
@@ -1383,7 +1383,7 @@ def test_gaussian_laplace01(self, dtype, xp):
13831383 assert_array_almost_equal (tmp1 + tmp2 , output )
13841384
13851385 @skip_xp_backends ("jax.numpy" , reason = "output array is read-only" )
1386- @skip_xp_backends ("dask.array" , reason = "output array is read-only. " )
1386+ @skip_xp_backends ("dask.array" , reason = "converts dask output array to numpy " )
13871387 @pytest .mark .parametrize ('dtype' ,
13881388 ["int32" , "float32" , "float64" ,
13891389 "complex64" , "complex128" ])
@@ -1400,7 +1400,7 @@ def test_gaussian_laplace02(self, dtype, xp):
14001400 assert_array_almost_equal (tmp1 + tmp2 , output )
14011401
14021402 @skip_xp_backends ("jax.numpy" , reason = "output array is read-only." )
1403- @skip_xp_backends ("dask.array" , reason = "output array is read-only. " )
1403+ @skip_xp_backends ("dask.array" , reason = "converts dask output array to numpy " )
14041404 @pytest .mark .parametrize ('dtype' , types + complex_types )
14051405 def test_generic_laplace01 (self , dtype , xp ):
14061406 if is_torch (xp ) and dtype in ("uint16" , "uint32" , "uint64" ):
@@ -1426,7 +1426,7 @@ def derivative2(input, axis, output, mode, cval, a, b):
14261426 assert_array_almost_equal (tmp , output )
14271427
14281428 @skip_xp_backends ("jax.numpy" , reason = "output array is read-only" )
1429- @skip_xp_backends ("dask.array" , reason = "output array is read-only. " )
1429+ @skip_xp_backends ("dask.array" , reason = "converts dask output array to numpy " )
14301430 @pytest .mark .parametrize ('dtype' ,
14311431 ["int32" , "float32" , "float64" ,
14321432 "complex64" , "complex128" ])
@@ -1447,7 +1447,7 @@ def test_gaussian_gradient_magnitude01(self, dtype, xp):
14471447 xp_assert_close (output , expected , rtol = 1e-6 , atol = 1e-6 )
14481448
14491449 @skip_xp_backends ("jax.numpy" , reason = "output array is read-only" )
1450- @skip_xp_backends ("dask.array" , reason = "output array is read-only. " )
1450+ @skip_xp_backends ("dask.array" , reason = "converts dask output array to numpy " )
14511451 @pytest .mark .parametrize ('dtype' ,
14521452 ["int32" , "float32" , "float64" ,
14531453 "complex64" , "complex128" ])
@@ -1838,9 +1838,7 @@ def test_rank06(self, xp):
18381838 @skip_xp_backends ("jax.numpy" ,
18391839 reason = "assignment destination is read-only" ,
18401840 )
1841- @xfail_xp_backends ("dask.array" ,
1842- reason = "wrong answer" ,
1843- )
1841+ @xfail_xp_backends ("dask.array" , reason = "wrong answer" )
18441842 def test_rank06_overlap (self , xp ):
18451843 array = xp .asarray ([[3 , 2 , 5 , 1 , 4 ],
18461844 [5 , 8 , 3 , 7 , 1 ],
@@ -2647,7 +2645,7 @@ def test_gaussian_radius_invalid(xp):
26472645
26482646
26492647@skip_xp_backends ("jax.numpy" , reason = "output array is read-only" )
2650- @skip_xp_backends ("dask.array" , reason = "wrong answer" )
2648+ @xfail_xp_backends ("dask.array" , reason = "wrong answer" )
26512649class TestThreading :
26522650 def check_func_thread (self , n , fun , args , out ):
26532651 from threading import Thread
0 commit comments