[pypy-svn] r70159 - in pypy/branch/micronumpy/pypy/module/micronumpy: . test

dan at codespeak.net dan at codespeak.net
Wed Dec 16 21:41:01 CET 2009


Author: dan
Date: Wed Dec 16 21:41:00 2009
New Revision: 70159

Modified:
   pypy/branch/micronumpy/pypy/module/micronumpy/app_numarray.py
   pypy/branch/micronumpy/pypy/module/micronumpy/test/test_numpy.py
Log:
Fixed tests so that they fail as they should.  Fixed applevel array() so 
that test_int_array test passes as does test_iterable_construction. 


Modified: pypy/branch/micronumpy/pypy/module/micronumpy/app_numarray.py
==============================================================================
--- pypy/branch/micronumpy/pypy/module/micronumpy/app_numarray.py	(original)
+++ pypy/branch/micronumpy/pypy/module/micronumpy/app_numarray.py	Wed Dec 16 21:41:00 2009
@@ -1,3 +1,4 @@
+# NOT_RPYTHON
 types_list = [object, complex, float, int]
 
 def lowest_type(x):
@@ -24,4 +25,8 @@
              }
     #type = lowest_common_type(xs)
     #return arrays[type](xs)
-    return numpy.zeros(len(xs), dtype=int) #FIXME
+    result = numpy.zeros(len(xs), dtype=int) #FIXME: dtype=dtype !
+    for i, x in enumerate(xs):
+        result[i] = x
+    return result
+

Modified: pypy/branch/micronumpy/pypy/module/micronumpy/test/test_numpy.py
==============================================================================
--- pypy/branch/micronumpy/pypy/module/micronumpy/test/test_numpy.py	(original)
+++ pypy/branch/micronumpy/pypy/module/micronumpy/test/test_numpy.py	Wed Dec 16 21:41:00 2009
@@ -9,21 +9,22 @@
            def compare(a, b):
                for x, y in zip(a, b):
                    if x != y: return False
+                   assert type(x) == type(y)
                return True
            return compare""")
-
-    def create_type_test(type):
-        def test_type_array(self):
-            compare = self.compare
+        cls.w_array_type_test = cls.space.appexec([cls.w_compare],
+        """(compare):
+        def array_type_test(data_type):
             from numpy import array
-            data = [type(x) for x in xrange(4)] 
+            data = [data_type(x) for x in xrange(4)] 
             ar = array(data)
 
             assert compare(ar, data)
-        return test_type_array
+        return array_type_test
+        """)
 
-    test_int_array = create_type_test(int)
-    test_float_array = create_type_test(float)
+    def test_int_array(self): self.array_type_test(int)
+    def test_float_array(self): self.array_type_test(float)
 
     def test_iterable_construction(self):
         compare = self.compare



More information about the Pypy-commit mailing list