Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit 08dabf0

Browse files
committed
Patch #103344: Sort dicts from extcall for easier comparison with Jython.
1 parent 9e9bcda commit 08dabf0

2 files changed

Lines changed: 49 additions & 41 deletions

File tree

Lib/test/output/test_extcall

Lines changed: 36 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,9 @@ test_extcall
66
(1, 2, 3, 4, 5) {}
77
(1, 2, 3, 4, 5) {}
88
(1, 2, 3, 4, 5) {}
9-
(1, 2, 3) {'b': 5, 'a': 4}
10-
(1, 2, 3, 4, 5) {'b': 7, 'a': 6}
11-
(1, 2, 3, 6, 7) {'y': 5, 'b': 9, 'x': 4, 'a': 8}
9+
(1, 2, 3) {'a': 4, 'b': 5}
10+
(1, 2, 3, 4, 5) {'a': 6, 'b': 7}
11+
(1, 2, 3, 6, 7) {'a': 8, 'b': 9, 'x': 4, 'y': 5}
1212
TypeError: g() takes at least 1 argument (0 given)
1313
TypeError: g() takes at least 1 argument (0 given)
1414
TypeError: g() takes at least 1 argument (0 given)
@@ -17,9 +17,9 @@ TypeError: g() takes at least 1 argument (0 given)
1717
1 (2, 3) {}
1818
1 (2, 3, 4, 5) {}
1919
0 (1, 2) {}
20-
1 () {'d': 4, 'b': 2, 'c': 3, 'a': 1}
21-
{'b': 2, 'c': 3, 'a': 1}
22-
{'b': 2, 'c': 3, 'a': 1}
20+
1 () {'a': 1, 'b': 2, 'c': 3, 'd': 4}
21+
{'a': 1, 'b': 2, 'c': 3}
22+
{'a': 1, 'b': 2, 'c': 3}
2323
g() got multiple values for keyword argument 'x'
2424
g() got multiple values for keyword argument 'b'
2525
f() keywords must be strings
@@ -34,75 +34,75 @@ unbound method method() must be called with instance as first argument
3434
za () {} -> za() takes exactly 1 argument (0 given)
3535
za () {'a': 'aa'} -> ok za aa B D E V a
3636
za () {'d': 'dd'} -> za() got an unexpected keyword argument 'd'
37-
za () {'d': 'dd', 'a': 'aa'} -> za() got an unexpected keyword argument 'd'
38-
za () {'d': 'dd', 'e': 'ee', 'b': 'bb', 'a': 'aa'} -> za() got an unexpected keyword argument 'd'
37+
za () {'a': 'aa', 'd': 'dd'} -> za() got an unexpected keyword argument 'd'
38+
za () {'a': 'aa', 'b': 'bb', 'd': 'dd', 'e': 'ee'} -> za() got an unexpected keyword argument 'd'
3939
za (1, 2) {} -> za() takes exactly 1 argument (2 given)
4040
za (1, 2) {'a': 'aa'} -> za() takes exactly 1 non-keyword argument (2 given)
4141
za (1, 2) {'d': 'dd'} -> za() takes exactly 1 non-keyword argument (2 given)
42-
za (1, 2) {'d': 'dd', 'a': 'aa'} -> za() takes exactly 1 non-keyword argument (2 given)
43-
za (1, 2) {'d': 'dd', 'e': 'ee', 'b': 'bb', 'a': 'aa'} -> za() takes exactly 1 non-keyword argument (2 given)
42+
za (1, 2) {'a': 'aa', 'd': 'dd'} -> za() takes exactly 1 non-keyword argument (2 given)
43+
za (1, 2) {'a': 'aa', 'b': 'bb', 'd': 'dd', 'e': 'ee'} -> za() takes exactly 1 non-keyword argument (2 given)
4444
za (1, 2, 3, 4, 5) {} -> za() takes exactly 1 argument (5 given)
4545
za (1, 2, 3, 4, 5) {'a': 'aa'} -> za() takes exactly 1 non-keyword argument (5 given)
4646
za (1, 2, 3, 4, 5) {'d': 'dd'} -> za() takes exactly 1 non-keyword argument (5 given)
47-
za (1, 2, 3, 4, 5) {'d': 'dd', 'a': 'aa'} -> za() takes exactly 1 non-keyword argument (5 given)
48-
za (1, 2, 3, 4, 5) {'d': 'dd', 'e': 'ee', 'b': 'bb', 'a': 'aa'} -> za() takes exactly 1 non-keyword argument (5 given)
47+
za (1, 2, 3, 4, 5) {'a': 'aa', 'd': 'dd'} -> za() takes exactly 1 non-keyword argument (5 given)
48+
za (1, 2, 3, 4, 5) {'a': 'aa', 'b': 'bb', 'd': 'dd', 'e': 'ee'} -> za() takes exactly 1 non-keyword argument (5 given)
4949
zade () {} -> zade() takes at least 1 argument (0 given)
5050
zade () {'a': 'aa'} -> ok zade aa B d e V a
5151
zade () {'d': 'dd'} -> zade() takes at least 1 non-keyword argument (0 given)
52-
zade () {'d': 'dd', 'a': 'aa'} -> ok zade aa B dd e V d
53-
zade () {'d': 'dd', 'e': 'ee', 'b': 'bb', 'a': 'aa'} -> zade() got an unexpected keyword argument 'b'
52+
zade () {'a': 'aa', 'd': 'dd'} -> ok zade aa B dd e V d
53+
zade () {'a': 'aa', 'b': 'bb', 'd': 'dd', 'e': 'ee'} -> zade() got an unexpected keyword argument 'b'
5454
zade (1, 2) {} -> ok zade 1 B 2 e V e
5555
zade (1, 2) {'a': 'aa'} -> zade() got multiple values for keyword argument 'a'
5656
zade (1, 2) {'d': 'dd'} -> zade() got multiple values for keyword argument 'd'
57-
zade (1, 2) {'d': 'dd', 'a': 'aa'} -> zade() got multiple values for keyword argument 'd'
58-
zade (1, 2) {'d': 'dd', 'e': 'ee', 'b': 'bb', 'a': 'aa'} -> zade() got multiple values for keyword argument 'd'
57+
zade (1, 2) {'a': 'aa', 'd': 'dd'} -> zade() got multiple values for keyword argument 'd'
58+
zade (1, 2) {'a': 'aa', 'b': 'bb', 'd': 'dd', 'e': 'ee'} -> zade() got multiple values for keyword argument 'd'
5959
zade (1, 2, 3, 4, 5) {} -> zade() takes at most 3 arguments (5 given)
6060
zade (1, 2, 3, 4, 5) {'a': 'aa'} -> zade() takes at most 3 non-keyword arguments (5 given)
6161
zade (1, 2, 3, 4, 5) {'d': 'dd'} -> zade() takes at most 3 non-keyword arguments (5 given)
62-
zade (1, 2, 3, 4, 5) {'d': 'dd', 'a': 'aa'} -> zade() takes at most 3 non-keyword arguments (5 given)
63-
zade (1, 2, 3, 4, 5) {'d': 'dd', 'e': 'ee', 'b': 'bb', 'a': 'aa'} -> zade() takes at most 3 non-keyword arguments (5 given)
62+
zade (1, 2, 3, 4, 5) {'a': 'aa', 'd': 'dd'} -> zade() takes at most 3 non-keyword arguments (5 given)
63+
zade (1, 2, 3, 4, 5) {'a': 'aa', 'b': 'bb', 'd': 'dd', 'e': 'ee'} -> zade() takes at most 3 non-keyword arguments (5 given)
6464
zabk () {} -> zabk() takes exactly 2 arguments (0 given)
6565
zabk () {'a': 'aa'} -> zabk() takes exactly 2 non-keyword arguments (1 given)
6666
zabk () {'d': 'dd'} -> zabk() takes exactly 2 non-keyword arguments (0 given)
67-
zabk () {'d': 'dd', 'a': 'aa'} -> zabk() takes exactly 2 non-keyword arguments (1 given)
68-
zabk () {'d': 'dd', 'e': 'ee', 'b': 'bb', 'a': 'aa'} -> ok zabk aa bb D E V {'d': 'dd', 'e': 'ee'}
67+
zabk () {'a': 'aa', 'd': 'dd'} -> zabk() takes exactly 2 non-keyword arguments (1 given)
68+
zabk () {'a': 'aa', 'b': 'bb', 'd': 'dd', 'e': 'ee'} -> ok zabk aa bb D E V {'d': 'dd', 'e': 'ee'}
6969
zabk (1, 2) {} -> ok zabk 1 2 D E V {}
7070
zabk (1, 2) {'a': 'aa'} -> zabk() got multiple values for keyword argument 'a'
7171
zabk (1, 2) {'d': 'dd'} -> ok zabk 1 2 D E V {'d': 'dd'}
72-
zabk (1, 2) {'d': 'dd', 'a': 'aa'} -> zabk() got multiple values for keyword argument 'a'
73-
zabk (1, 2) {'d': 'dd', 'e': 'ee', 'b': 'bb', 'a': 'aa'} -> zabk() got multiple values for keyword argument 'b'
72+
zabk (1, 2) {'a': 'aa', 'd': 'dd'} -> zabk() got multiple values for keyword argument 'a'
73+
zabk (1, 2) {'a': 'aa', 'b': 'bb', 'd': 'dd', 'e': 'ee'} -> zabk() got multiple values for keyword argument 'b'
7474
zabk (1, 2, 3, 4, 5) {} -> zabk() takes exactly 2 arguments (5 given)
7575
zabk (1, 2, 3, 4, 5) {'a': 'aa'} -> zabk() takes exactly 2 non-keyword arguments (5 given)
7676
zabk (1, 2, 3, 4, 5) {'d': 'dd'} -> zabk() takes exactly 2 non-keyword arguments (5 given)
77-
zabk (1, 2, 3, 4, 5) {'d': 'dd', 'a': 'aa'} -> zabk() takes exactly 2 non-keyword arguments (5 given)
78-
zabk (1, 2, 3, 4, 5) {'d': 'dd', 'e': 'ee', 'b': 'bb', 'a': 'aa'} -> zabk() takes exactly 2 non-keyword arguments (5 given)
77+
zabk (1, 2, 3, 4, 5) {'a': 'aa', 'd': 'dd'} -> zabk() takes exactly 2 non-keyword arguments (5 given)
78+
zabk (1, 2, 3, 4, 5) {'a': 'aa', 'b': 'bb', 'd': 'dd', 'e': 'ee'} -> zabk() takes exactly 2 non-keyword arguments (5 given)
7979
zabdv () {} -> zabdv() takes at least 2 arguments (0 given)
8080
zabdv () {'a': 'aa'} -> zabdv() takes at least 2 non-keyword arguments (1 given)
8181
zabdv () {'d': 'dd'} -> zabdv() takes at least 2 non-keyword arguments (0 given)
82-
zabdv () {'d': 'dd', 'a': 'aa'} -> zabdv() takes at least 2 non-keyword arguments (1 given)
83-
zabdv () {'d': 'dd', 'e': 'ee', 'b': 'bb', 'a': 'aa'} -> zabdv() got an unexpected keyword argument 'e'
82+
zabdv () {'a': 'aa', 'd': 'dd'} -> zabdv() takes at least 2 non-keyword arguments (1 given)
83+
zabdv () {'a': 'aa', 'b': 'bb', 'd': 'dd', 'e': 'ee'} -> zabdv() got an unexpected keyword argument 'e'
8484
zabdv (1, 2) {} -> ok zabdv 1 2 d E () e
8585
zabdv (1, 2) {'a': 'aa'} -> zabdv() got multiple values for keyword argument 'a'
8686
zabdv (1, 2) {'d': 'dd'} -> ok zabdv 1 2 dd E () d
87-
zabdv (1, 2) {'d': 'dd', 'a': 'aa'} -> zabdv() got multiple values for keyword argument 'a'
88-
zabdv (1, 2) {'d': 'dd', 'e': 'ee', 'b': 'bb', 'a': 'aa'} -> zabdv() got an unexpected keyword argument 'e'
87+
zabdv (1, 2) {'a': 'aa', 'd': 'dd'} -> zabdv() got multiple values for keyword argument 'a'
88+
zabdv (1, 2) {'a': 'aa', 'b': 'bb', 'd': 'dd', 'e': 'ee'} -> zabdv() got an unexpected keyword argument 'e'
8989
zabdv (1, 2, 3, 4, 5) {} -> ok zabdv 1 2 3 E (4, 5) e
9090
zabdv (1, 2, 3, 4, 5) {'a': 'aa'} -> zabdv() got multiple values for keyword argument 'a'
9191
zabdv (1, 2, 3, 4, 5) {'d': 'dd'} -> zabdv() got multiple values for keyword argument 'd'
92-
zabdv (1, 2, 3, 4, 5) {'d': 'dd', 'a': 'aa'} -> zabdv() got multiple values for keyword argument 'd'
93-
zabdv (1, 2, 3, 4, 5) {'d': 'dd', 'e': 'ee', 'b': 'bb', 'a': 'aa'} -> zabdv() got multiple values for keyword argument 'd'
92+
zabdv (1, 2, 3, 4, 5) {'a': 'aa', 'd': 'dd'} -> zabdv() got multiple values for keyword argument 'd'
93+
zabdv (1, 2, 3, 4, 5) {'a': 'aa', 'b': 'bb', 'd': 'dd', 'e': 'ee'} -> zabdv() got multiple values for keyword argument 'd'
9494
zabdevk () {} -> zabdevk() takes at least 2 arguments (0 given)
9595
zabdevk () {'a': 'aa'} -> zabdevk() takes at least 2 non-keyword arguments (1 given)
9696
zabdevk () {'d': 'dd'} -> zabdevk() takes at least 2 non-keyword arguments (0 given)
97-
zabdevk () {'d': 'dd', 'a': 'aa'} -> zabdevk() takes at least 2 non-keyword arguments (1 given)
98-
zabdevk () {'d': 'dd', 'e': 'ee', 'b': 'bb', 'a': 'aa'} -> ok zabdevk aa bb dd ee () {}
97+
zabdevk () {'a': 'aa', 'd': 'dd'} -> zabdevk() takes at least 2 non-keyword arguments (1 given)
98+
zabdevk () {'a': 'aa', 'b': 'bb', 'd': 'dd', 'e': 'ee'} -> ok zabdevk aa bb dd ee () {}
9999
zabdevk (1, 2) {} -> ok zabdevk 1 2 d e () {}
100100
zabdevk (1, 2) {'a': 'aa'} -> zabdevk() got multiple values for keyword argument 'a'
101101
zabdevk (1, 2) {'d': 'dd'} -> ok zabdevk 1 2 dd e () {}
102-
zabdevk (1, 2) {'d': 'dd', 'a': 'aa'} -> zabdevk() got multiple values for keyword argument 'a'
103-
zabdevk (1, 2) {'d': 'dd', 'e': 'ee', 'b': 'bb', 'a': 'aa'} -> zabdevk() got multiple values for keyword argument 'b'
102+
zabdevk (1, 2) {'a': 'aa', 'd': 'dd'} -> zabdevk() got multiple values for keyword argument 'a'
103+
zabdevk (1, 2) {'a': 'aa', 'b': 'bb', 'd': 'dd', 'e': 'ee'} -> zabdevk() got multiple values for keyword argument 'b'
104104
zabdevk (1, 2, 3, 4, 5) {} -> ok zabdevk 1 2 3 4 (5,) {}
105105
zabdevk (1, 2, 3, 4, 5) {'a': 'aa'} -> zabdevk() got multiple values for keyword argument 'a'
106106
zabdevk (1, 2, 3, 4, 5) {'d': 'dd'} -> zabdevk() got multiple values for keyword argument 'd'
107-
zabdevk (1, 2, 3, 4, 5) {'d': 'dd', 'a': 'aa'} -> zabdevk() got multiple values for keyword argument 'd'
108-
zabdevk (1, 2, 3, 4, 5) {'d': 'dd', 'e': 'ee', 'b': 'bb', 'a': 'aa'} -> zabdevk() got multiple values for keyword argument 'd'
107+
zabdevk (1, 2, 3, 4, 5) {'a': 'aa', 'd': 'dd'} -> zabdevk() got multiple values for keyword argument 'd'
108+
zabdevk (1, 2, 3, 4, 5) {'a': 'aa', 'b': 'bb', 'd': 'dd', 'e': 'ee'} -> zabdevk() got multiple values for keyword argument 'd'

Lib/test/test_extcall.py

Lines changed: 13 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,19 @@
22
from UserList import UserList
33
import string
44

5+
def sortdict(d):
6+
keys = d.keys()
7+
keys.sort()
8+
lst = []
9+
for k in keys:
10+
lst.append("%r: %r" % (k, d[k]))
11+
return "{%s}" % ", ".join(lst)
12+
513
def f(*a, **k):
6-
print a, k
14+
print a, sortdict(k)
715

816
def g(x, *y, **z):
9-
print x, y, z
17+
print x, y, sortdict(z)
1018

1119
def h(j=1, a=2, h=3):
1220
print j, a, h
@@ -81,8 +89,8 @@ def __getitem__(self, i):
8189
d2 = d.copy()
8290
verify(d == d2)
8391
g(1, d=4, **d)
84-
print d
85-
print d2
92+
print sortdict(d)
93+
print sortdict(d2)
8694
verify(d == d2, "function call modified dictionary")
8795

8896
# what about willful misconduct?
@@ -199,6 +207,6 @@ def method(self, arg1, arg2):
199207
for kwargs in ['', 'a', 'd', 'ad', 'abde']:
200208
kwdict = {}
201209
for k in kwargs: kwdict[k] = k + k
202-
print func.func_name, args, kwdict, '->',
210+
print func.func_name, args, sortdict(kwdict), '->',
203211
try: apply(func, args, kwdict)
204212
except TypeError, err: print err

0 commit comments

Comments
 (0)