extended test cases
authorStefan Behnel <scoder@users.berlios.de>
Thu, 22 Apr 2010 12:24:26 +0000 (14:24 +0200)
committerStefan Behnel <scoder@users.berlios.de>
Thu, 22 Apr 2010 12:24:26 +0000 (14:24 +0200)
tests/run/inop.pyx
tests/run/notinop.pyx

index 846ee905dc2af48b0463e28e36650543d3fa7fdb..b2d7733a59f2b330e378b4c79f27b88d63a6e3d6 100644 (file)
@@ -92,7 +92,7 @@ def m_set(int a):
     cdef int result = a in {1,2,3,4}
     return result
 
-cdef bytes bytes_string = b'abcdefg'
+cdef bytes bytes_string = b'ab\0cde\0f\0g'
 py_bytes_string = bytes_string
 
 @cython.test_assert_path_exists("//PrimaryCmpNode")
@@ -122,10 +122,10 @@ def m_bytes_literal(char a):
     >>> m_bytes_literal(ord('X'))
     0
     """
-    cdef int result = a in b'abcdefg'
+    cdef int result = a in b'ab\0cde\0f\0g'
     return result
 
-cdef unicode unicode_string = u'abcdefg\u1234\uF8D2'
+cdef unicode unicode_string = u'abc\0defg\u1234\uF8D2'
 py_unicode_string = unicode_string
 
 @cython.test_assert_path_exists("//PrimaryCmpNode")
@@ -162,7 +162,7 @@ def m_unicode_literal(Py_UNICODE a):
     >>> m_unicode_literal(ord(py_klingon_character))
     1
     """
-    cdef int result = a in u'abcdefg\u1234\uF8D2'
+    cdef int result = a in u'abc\0defg\u1234\uF8D2'
     return result
 
 @cython.test_assert_path_exists("//SwitchStatNode")
@@ -191,6 +191,32 @@ def conditional_object(int a):
     """
     return 1 if a in (1,2,3,4) else '2'
 
+@cython.test_assert_path_exists("//SwitchStatNode")
+@cython.test_fail_if_path_exists("//BoolBinopNode", "//PrimaryCmpNode")
+def conditional_bytes(char a):
+    """
+    >>> conditional_bytes(ord('a'))
+    1
+    >>> conditional_bytes(ord('X'))
+    '2'
+    >>> conditional_bytes(0)
+    '2'
+    """
+    return 1 if a in b'abc' else '2'
+
+@cython.test_assert_path_exists("//SwitchStatNode")
+@cython.test_fail_if_path_exists("//BoolBinopNode", "//PrimaryCmpNode")
+def conditional_unicode(Py_UNICODE a):
+    """
+    >>> conditional_unicode(ord('a'))
+    1
+    >>> conditional_unicode(ord('X'))
+    '2'
+    >>> conditional_unicode(0)
+    '2'
+    """
+    return 1 if a in u'abc' else '2'
+
 @cython.test_assert_path_exists("//SwitchStatNode")
 @cython.test_fail_if_path_exists("//BoolBinopNode", "//PrimaryCmpNode")
 def conditional_none(int a):
index 2ec632fb216b8f97fe5b1169d2d6c46238f880d1..50142e23648f2c7851946c82d81b6c309b11d87a 100644 (file)
@@ -242,6 +242,32 @@ def conditional_object(int a):
     """
     return 1 if a not in (1,2,3,4) else '2'
 
+@cython.test_assert_path_exists("//SwitchStatNode")
+@cython.test_fail_if_path_exists("//BoolBinopNode", "//PrimaryCmpNode")
+def conditional_bytes(char a):
+    """
+    >>> conditional_bytes(ord('a'))
+    '2'
+    >>> conditional_bytes(ord('X'))
+    1
+    >>> conditional_bytes(0)
+    1
+    """
+    return 1 if a not in b'abc' else '2'
+
+@cython.test_assert_path_exists("//SwitchStatNode")
+@cython.test_fail_if_path_exists("//BoolBinopNode", "//PrimaryCmpNode")
+def conditional_unicode(Py_UNICODE a):
+    """
+    >>> conditional_unicode(ord('a'))
+    '2'
+    >>> conditional_unicode(ord('X'))
+    1
+    >>> conditional_unicode(0)
+    1
+    """
+    return 1 if a not in u'abc' else '2'
+
 @cython.test_assert_path_exists("//SwitchStatNode")
 @cython.test_fail_if_path_exists("//BoolBinopNode", "//PrimaryCmpNode")
 def conditional_none(int a):