(self)
| 3607 | assert_equal(c2.count, 1) |
| 3608 | |
| 3609 | def test_ufunc_override_methods(self): |
| 3610 | |
| 3611 | class A: |
| 3612 | def __array_ufunc__(self, ufunc, method, *inputs, **kwargs): |
| 3613 | return self, ufunc, method, inputs, kwargs |
| 3614 | |
| 3615 | # __call__ |
| 3616 | a = A() |
| 3617 | with assert_raises(TypeError): |
| 3618 | np.multiply.__call__(1, a, foo='bar', answer=42) |
| 3619 | res = np.multiply.__call__(1, a, subok='bar', where=42) |
| 3620 | assert_equal(res[0], a) |
| 3621 | assert_equal(res[1], np.multiply) |
| 3622 | assert_equal(res[2], '__call__') |
| 3623 | assert_equal(res[3], (1, a)) |
| 3624 | assert_equal(res[4], {'subok': 'bar', 'where': 42}) |
| 3625 | |
| 3626 | # __call__, wrong args |
| 3627 | assert_raises(TypeError, np.multiply, a) |
| 3628 | assert_raises(TypeError, np.multiply, a, a, a, a) |
| 3629 | assert_raises(TypeError, np.multiply, a, a, sig='a', signature='a') |
| 3630 | assert_raises(TypeError, ncu_tests.inner1d, a, a, axis=0, axes=[0, 0]) |
| 3631 | |
| 3632 | # reduce, positional args |
| 3633 | res = np.multiply.reduce(a, 'axis0', 'dtype0', 'out0', 'keep0') |
| 3634 | assert_equal(res[0], a) |
| 3635 | assert_equal(res[1], np.multiply) |
| 3636 | assert_equal(res[2], 'reduce') |
| 3637 | assert_equal(res[3], (a,)) |
| 3638 | assert_equal(res[4], {'dtype': 'dtype0', |
| 3639 | 'out': ('out0',), |
| 3640 | 'keepdims': 'keep0', |
| 3641 | 'axis': 'axis0'}) |
| 3642 | |
| 3643 | # reduce, kwargs |
| 3644 | res = np.multiply.reduce(a, axis='axis0', dtype='dtype0', out='out0', |
| 3645 | keepdims='keep0', initial='init0', |
| 3646 | where='where0') |
| 3647 | assert_equal(res[0], a) |
| 3648 | assert_equal(res[1], np.multiply) |
| 3649 | assert_equal(res[2], 'reduce') |
| 3650 | assert_equal(res[3], (a,)) |
| 3651 | assert_equal(res[4], {'dtype': 'dtype0', |
| 3652 | 'out': ('out0',), |
| 3653 | 'keepdims': 'keep0', |
| 3654 | 'axis': 'axis0', |
| 3655 | 'initial': 'init0', |
| 3656 | 'where': 'where0'}) |
| 3657 | # reduce, kwargs, out=None is removed |
| 3658 | res = np.multiply.reduce(a, axis='axis0', dtype='dtype0', out=None, |
| 3659 | keepdims='keep0', initial='init0', |
| 3660 | where='where0') |
| 3661 | assert_equal(res[0], a) |
| 3662 | assert_equal(res[1], np.multiply) |
| 3663 | assert_equal(res[2], 'reduce') |
| 3664 | assert_equal(res[3], (a,)) |
| 3665 | assert_equal(res[4], {'dtype': 'dtype0', |
| 3666 | 'keepdims': 'keep0', |
nothing calls this directly
no test coverage detected