Author: Martin Matusiak <numero...@gmail.com>
Branch: py3.3-fixes
Changeset: r72629:4f709511ed94
Date: 2014-07-31 21:40 +0200
http://bitbucket.org/pypy/pypy/changeset/4f709511ed94/

Log:    use helper function to locate the code object

diff --git a/pypy/interpreter/test/test_compiler.py 
b/pypy/interpreter/test/test_compiler.py
--- a/pypy/interpreter/test/test_compiler.py
+++ b/pypy/interpreter/test/test_compiler.py
@@ -718,15 +718,20 @@
         from pypy.interpreter.pycode import cpython_code_signature
         from pypy.interpreter.signature import Signature
 
+        def find_func(code):
+            for w_const in code.co_consts_w:
+                if isinstance(w_const, PyCode):
+                    return w_const
+
         snippet = 'def f(a, b, m=1, n=2, **kwargs): pass'
         containing_co = self.compiler.compile(snippet, '<string>', 'single', 0)
-        co = containing_co.co_consts_w[2]
+        co = find_func(containing_co)
         sig = cpython_code_signature(co)
         assert sig == Signature(['a', 'b', 'm', 'n'], None, 'kwargs', [])
 
         snippet = 'def f(a, b, *, m=1, n=2, **kwargs): pass'
         containing_co = self.compiler.compile(snippet, '<string>', 'single', 0)
-        co = containing_co.co_consts_w[4]
+        co = find_func(containing_co)
         sig = cpython_code_signature(co)
         assert sig == Signature(['a', 'b'], None, 'kwargs', ['m', 'n'])
 
_______________________________________________
pypy-commit mailing list
pypy-commit@python.org
https://mail.python.org/mailman/listinfo/pypy-commit

Reply via email to