extended test case
authorStefan Behnel <scoder@users.berlios.de>
Thu, 22 Apr 2010 12:13:58 +0000 (14:13 +0200)
committerStefan Behnel <scoder@users.berlios.de>
Thu, 22 Apr 2010 12:13:58 +0000 (14:13 +0200)
tests/run/for_in_string.pyx

index a892d1a5433e762a10c73d99998fecc04f715807..477b56d06962859c30df02ff3932cb1d1bf247cd 100644 (file)
@@ -2,9 +2,13 @@ cimport cython
 
 bytes_abc = b'abc'
 bytes_ABC = b'ABC'
+bytes_abc_null = b'a\0b\0c'
+bytes_ABC_null = b'A\0B\0C'
 
 unicode_abc = u'abc'
 unicode_ABC = u'ABC'
+unicode_abc_null = u'a\0b\0c'
+unicode_ABC_null = u'A\0B\0C'
 
 
 def for_in_bytes(bytes s):
@@ -13,6 +17,10 @@ def for_in_bytes(bytes s):
     'X'
     >>> for_in_bytes(bytes_ABC)
     'C'
+    >>> for_in_bytes(bytes_abc_null)
+    'X'
+    >>> for_in_bytes(bytes_ABC_null)
+    'C'
     """
     for c in s:
         # Py2/Py3
@@ -29,6 +37,10 @@ def for_char_in_bytes(bytes s):
     'X'
     >>> for_char_in_bytes(bytes_ABC)
     'C'
+    >>> for_char_in_bytes(bytes_abc_null)
+    'X'
+    >>> for_char_in_bytes(bytes_ABC_null)
+    'C'
     """
     cdef char c
     for c in s:
@@ -45,6 +57,10 @@ def for_char_in_enumerate_bytes(bytes s):
     'X'
     >>> for_char_in_enumerate_bytes(bytes_ABC)
     2
+    >>> for_char_in_enumerate_bytes(bytes_abc_null)
+    'X'
+    >>> for_char_in_enumerate_bytes(bytes_ABC_null)
+    4
     """
     cdef char c
     cdef Py_ssize_t i
@@ -62,6 +78,10 @@ def for_pyunicode_in_unicode(unicode s):
     'X'
     >>> for_pyunicode_in_unicode(unicode_ABC)
     'C'
+    >>> for_pyunicode_in_unicode(unicode_abc_null)
+    'X'
+    >>> for_pyunicode_in_unicode(unicode_ABC_null)
+    'C'
     """
     cdef Py_UNICODE c
     for c in s:
@@ -78,6 +98,10 @@ def for_pyunicode_in_enumerate_unicode(unicode s):
     'X'
     >>> for_pyunicode_in_enumerate_unicode(unicode_ABC)
     2
+    >>> for_pyunicode_in_enumerate_unicode(unicode_abc_null)
+    'X'
+    >>> for_pyunicode_in_enumerate_unicode(unicode_ABC_null)
+    4
     """
     cdef Py_UNICODE c
     cdef Py_ssize_t i