[pypy-commit] pypy default: a couple more scalar methods

bdkearns noreply at buildbot.pypy.org
Fri Jan 31 01:21:16 CET 2014


Author: Brian Kearns <bdkearns at gmail.com>
Branch: 
Changeset: r69029:2ee84c0996da
Date: 2014-01-30 19:20 -0500
http://bitbucket.org/pypy/pypy/changeset/2ee84c0996da/

Log:	a couple more scalar methods

diff --git a/pypy/module/micronumpy/interp_boxes.py b/pypy/module/micronumpy/interp_boxes.py
--- a/pypy/module/micronumpy/interp_boxes.py
+++ b/pypy/module/micronumpy/interp_boxes.py
@@ -256,6 +256,10 @@
         value = space.is_true(self)
         return get_dtype_cache(space).w_booldtype.box(value)
 
+    def descr_zero(self, space):
+        from pypy.module.micronumpy.interp_dtype import get_dtype_cache
+        return get_dtype_cache(space).w_longdtype.box(0)
+
     def descr_ravel(self, space):
         from pypy.module.micronumpy.base import convert_to_array
         w_values = space.newtuple([self])
@@ -588,6 +592,8 @@
     tolist = interp2app(W_GenericBox.item),
     min = interp2app(W_GenericBox.descr_self),
     max = interp2app(W_GenericBox.descr_self),
+    argmin = interp2app(W_GenericBox.descr_zero),
+    argmax = interp2app(W_GenericBox.descr_zero),
     sum = interp2app(W_GenericBox.descr_self),
     prod = interp2app(W_GenericBox.descr_self),
     any = interp2app(W_GenericBox.descr_any),
diff --git a/pypy/module/micronumpy/test/test_scalar.py b/pypy/module/micronumpy/test/test_scalar.py
--- a/pypy/module/micronumpy/test/test_scalar.py
+++ b/pypy/module/micronumpy/test/test_scalar.py
@@ -107,6 +107,10 @@
         for a in [np.int32(2), np.float64(2.0), np.complex64(42)]:
             for op in ['min', 'max', 'sum', 'prod']:
                 assert getattr(a, op)() == a
+            for op in ['argmin', 'argmax']:
+                b = getattr(a, op)()
+                assert type(b) is np.int_
+                assert b == 0
 
     def test_buffer(self):
         import numpy as np


More information about the pypy-commit mailing list