mirror of
https://github.com/python/cpython.git
synced 2025-08-04 08:59:19 +00:00
pickles():
- The test for deepcopy() in pickles() was indented wrongly, so it got run twice (one for binary pickle mode, one for text pickle mode; but the test doesn't depend on the pickle mode). - In verbose mode, show which subtest (pickle/cPickle/deepcopy, text/bin).
This commit is contained in:
parent
c907bd89de
commit
fe1fd0e6e9
1 changed files with 21 additions and 17 deletions
|
@ -2081,6 +2081,8 @@ def pickles():
|
|||
|
||||
for p in pickle, cPickle:
|
||||
for bin in 0, 1:
|
||||
if verbose:
|
||||
print p.__name__, ["text", "binary"][bin]
|
||||
|
||||
for cls in C, C1, C2:
|
||||
s = p.dumps(cls, bin)
|
||||
|
@ -2101,24 +2103,26 @@ def pickles():
|
|||
print "a = x =", a
|
||||
print "b = y =", b
|
||||
|
||||
# Testing copy.deepcopy()
|
||||
import copy
|
||||
for cls in C, C1, C2:
|
||||
cls2 = copy.deepcopy(cls)
|
||||
verify(cls2 is cls)
|
||||
# Testing copy.deepcopy()
|
||||
if verbose:
|
||||
print "deepcopy"
|
||||
import copy
|
||||
for cls in C, C1, C2:
|
||||
cls2 = copy.deepcopy(cls)
|
||||
verify(cls2 is cls)
|
||||
|
||||
a = C1(1, 2); a.append(42); a.append(24)
|
||||
b = C2("hello", "world", 42)
|
||||
x, y = copy.deepcopy((a, b))
|
||||
assert x.__class__ == a.__class__
|
||||
assert sorteditems(x.__dict__) == sorteditems(a.__dict__)
|
||||
assert y.__class__ == b.__class__
|
||||
assert sorteditems(y.__dict__) == sorteditems(b.__dict__)
|
||||
assert `x` == `a`
|
||||
assert `y` == `b`
|
||||
if verbose:
|
||||
print "a = x =", a
|
||||
print "b = y =", b
|
||||
a = C1(1, 2); a.append(42); a.append(24)
|
||||
b = C2("hello", "world", 42)
|
||||
x, y = copy.deepcopy((a, b))
|
||||
assert x.__class__ == a.__class__
|
||||
assert sorteditems(x.__dict__) == sorteditems(a.__dict__)
|
||||
assert y.__class__ == b.__class__
|
||||
assert sorteditems(y.__dict__) == sorteditems(b.__dict__)
|
||||
assert `x` == `a`
|
||||
assert `y` == `b`
|
||||
if verbose:
|
||||
print "a = x =", a
|
||||
print "b = y =", b
|
||||
|
||||
def copies():
|
||||
if verbose: print "Testing copy.copy() and copy.deepcopy()..."
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue