MCPcopy Create free account
hub / github.com/dask/dask / reduction_2d_test

Function reduction_2d_test

dask/array/tests/test_reductions.py:147–196  ·  view source on GitHub ↗
(da_func, darr, np_func, narr, use_dtype=True, split_every=True)

Source from the content-addressed store, hash-verified

145
146
147def reduction_2d_test(da_func, darr, np_func, narr, use_dtype=True, split_every=True):
148 assert_eq(da_func(darr), np_func(narr))
149 assert_eq(da_func(darr, keepdims=True), np_func(narr, keepdims=True))
150 assert_eq(da_func(darr, axis=()), np_func(narr, axis=()))
151 assert_eq(da_func(darr, axis=0), np_func(narr, axis=0))
152 assert_eq(da_func(darr, axis=1), np_func(narr, axis=1))
153 assert_eq(da_func(darr, axis=-1), np_func(narr, axis=-1))
154 assert_eq(da_func(darr, axis=-2), np_func(narr, axis=-2))
155 assert_eq(
156 da_func(darr, axis=1, keepdims=True), np_func(narr, axis=1, keepdims=True)
157 )
158 assert_eq(
159 da_func(darr, axis=(), keepdims=True), np_func(narr, axis=(), keepdims=True)
160 )
161 assert_eq(da_func(darr, axis=(1, 0)), np_func(narr, axis=(1, 0)))
162
163 assert same_keys(da_func(darr, axis=()), da_func(darr, axis=()))
164 assert same_keys(da_func(darr, axis=1), da_func(darr, axis=1))
165 assert same_keys(da_func(darr, axis=(1, 0)), da_func(darr, axis=(1, 0)))
166
167 if use_dtype:
168 with pytest.warns(ComplexWarning) if np.iscomplexobj(narr) else does_not_warn():
169 assert_eq(da_func(darr, dtype="f8"), np_func(narr, dtype="f8"))
170 assert_eq(da_func(darr, dtype="i8"), np_func(narr, dtype="i8"))
171
172 if split_every:
173 a1 = da_func(darr, split_every=4)
174 a2 = da_func(darr, split_every={0: 2, 1: 2})
175 assert same_keys(a1, a2)
176 assert_eq(a1, np_func(narr))
177 assert_eq(a2, np_func(narr))
178 assert_eq(
179 da_func(darr, keepdims=True, split_every=4),
180 np_func(narr, keepdims=True),
181 )
182 assert_eq(da_func(darr, axis=(), split_every=2), np_func(narr, axis=()))
183 assert_eq(da_func(darr, axis=0, split_every=2), np_func(narr, axis=0))
184 assert_eq(
185 da_func(darr, axis=(), keepdims=True, split_every=2),
186 np_func(narr, axis=(), keepdims=True),
187 )
188 assert_eq(
189 da_func(darr, axis=0, keepdims=True, split_every=2),
190 np_func(narr, axis=0, keepdims=True),
191 )
192 assert_eq(da_func(darr, axis=1, split_every=2), np_func(narr, axis=1))
193 assert_eq(
194 da_func(darr, axis=1, keepdims=True, split_every=2),
195 np_func(narr, axis=1, keepdims=True),
196 )
197
198
199def test_reduction_errors():

Callers 2

test_reductions_2DFunction · 0.85
test_reductions_2D_nansFunction · 0.85

Calls 2

assert_eqFunction · 0.90
same_keysFunction · 0.90

Tested by

no test coverage detected