[pypy-svn] r27530 - pypy/dist/pypy/translator/js2/test
fijal at codespeak.net
fijal at codespeak.net
Sun May 21 12:23:11 CEST 2006
Author: fijal
Date: Sun May 21 12:23:09 2006
New Revision: 27530
Added:
pypy/dist/pypy/translator/js2/test/test_merge_if_blocks.py
Log:
Added another passing test
Added: pypy/dist/pypy/translator/js2/test/test_merge_if_blocks.py
==============================================================================
--- (empty file)
+++ pypy/dist/pypy/translator/js2/test/test_merge_if_blocks.py Sun May 21 12:23:09 2006
@@ -0,0 +1,81 @@
+import py
+
+from pypy.translator.js2.test.runtest import compile_function
+
+import sys
+
+def test_merge_if_blocks_simple():
+ def merge_if_blocks_simple(i):
+ if i == 5:
+ return 1005
+ else:
+ return 2222
+ simple = compile_function(merge_if_blocks_simple, [int])
+ for i in range(-20,20):
+ assert simple(i) == merge_if_blocks_simple(i)
+
+def test_merge_if_blocks_basic():
+ def merge_if_blocks_basic(i):
+ if i == 5:
+ return 1005
+ elif i == 8:
+ return 1008
+ return 2222
+ basic = compile_function(merge_if_blocks_basic , [int])
+ for i in range(-20,20):
+ assert basic(i) == merge_if_blocks_basic(i)
+
+def test_merge_if_blocks_chr():
+ py.test.skip("String support in ootypesystem")
+ def merge_if_blocks_chr(i):
+ c = chr(i)
+ if c == '\x05':
+ return 1005
+ elif c == '!':
+ return 1008
+ return 2222
+ basic = compile_function(merge_if_blocks_chr , [int])
+ for i in range(0, 50):
+ assert basic(i) == merge_if_blocks_chr(i)
+
+def test_merge_if_blocks_uni():
+ py.test.skip("String support in ootypesystem")
+ def merge_if_blocks_uni(i):
+ c = unichr(i)
+ if c == u'\x05':
+ return 1005
+ elif c == u'!':
+ return 1008
+ return 2222
+ basic = compile_function(merge_if_blocks_uni , [int])
+ for i in range(0, 50):
+ assert basic(i) == merge_if_blocks_uni(i)
+
+
+def test_merge_if_blocks_many():
+ def merge_if_blocks_many(i):
+ if i == 0:
+ return 1000
+ elif i == 1:
+ return 1001
+ elif i == 2:
+ return 1002
+ elif i == 3:
+ return 1003
+ elif i == 4:
+ return 1004
+ elif i == 5:
+ return 1005
+ elif i == 6:
+ return 1006
+ elif i == 7:
+ return 1007
+ elif i == 8:
+ return 1008
+ elif i == 9:
+ return 1009
+ else:
+ return 2222
+ many = compile_function(merge_if_blocks_many , [int])
+ for i in range(-20,20):
+ assert many(i) == merge_if_blocks_many(i)
More information about the Pypy-commit
mailing list