extended test cases
authorStefan Behnel <scoder@users.berlios.de>
Fri, 28 Nov 2008 11:09:28 +0000 (12:09 +0100)
committerStefan Behnel <scoder@users.berlios.de>
Fri, 28 Nov 2008 11:09:28 +0000 (12:09 +0100)
tests/run/dict.pyx
tests/run/listcomp.pyx

index 360d77cc578834b107dbdd701e01007e33f7b088..05bea96aa6a20edcce58bad7810a506a8eaeae26 100644 (file)
@@ -15,6 +15,25 @@ __doc__ = u"""
     resting
     >>> print(constant()['answer'])
     42
+
+    >>> print(dict_call()['parrot'])
+    resting
+    >>> print(dict_call()['answer'])
+    42
+
+    >>> print(dict_call_dict()['parrot'])
+    resting
+    >>> print(dict_call_dict()['answer'])
+    42
+
+    >>> print(dict_call_kwargs()['parrot1'])
+    resting
+    >>> print(dict_call_kwargs()['parrot2'])
+    resting
+    >>> print(dict_call_kwargs()['answer1'])
+    42
+    >>> print(dict_call_kwargs()['answer2'])
+    42
 """
 
 def empty():
@@ -36,3 +55,16 @@ def keyvalues2(key1, value1, key2, value2):
 def constant():
     d = {u"parrot":u"resting", u"answer":42}
     return d
+
+def dict_call():
+    d = dict(parrot=u"resting", answer=42)
+    return d
+
+def dict_call_dict():
+    d = dict(dict(parrot=u"resting", answer=42))
+    return d
+
+def dict_call_kwargs():
+    kwargs = dict(parrot1=u"resting", answer1=42)
+    d = dict(parrot2=u"resting", answer2=42, **kwargs)
+    return d
index a63521feda314cf57ac934f241f637366ad00cf3..d7c0ae0b51e22bad5bd18d029df8c95a96ca7d8c 100644 (file)
@@ -3,14 +3,22 @@ u"""
 [0, 4, 8]
 >>> typed()
 [A, A, A]
+>>> iterdict()
+[1, 2, 3]
 """
 
 def smoketest():
     print [x*2 for x in range(5) if x % 2 == 0]
 
 cdef class A:
-    def __repr__(self): return "A"
+    def __repr__(self): return u"A"
 
 def typed():
     cdef A obj
-    print [obj for obj in [A(), A(), A()]]
\ No newline at end of file
+    print [obj for obj in [A(), A(), A()]]
+
+def iterdict():
+    cdef dict d = dict(a=1,b=2,c=3)
+    l = [d[key] for key in d]
+    l.sort()
+    print l