summaryrefslogtreecommitdiffstats
path: root/Lib/test
diff options
context:
space:
mode:
authorChristian Heimes <christian@cheimes.de>2007-12-28 14:08:13 (GMT)
committerChristian Heimes <christian@cheimes.de>2007-12-28 14:08:13 (GMT)
commit9a37159e51fc436594752ab0e6c6ad4d25df8e4e (patch)
treeba47bacea35d0244e2fb7fdbfe91e6e03d0386d3 /Lib/test
parentf609a345a4adaedd5806b4ec8439b84c409b9f66 (diff)
downloadcpython-9a37159e51fc436594752ab0e6c6ad4d25df8e4e.zip
cpython-9a37159e51fc436594752ab0e6c6ad4d25df8e4e.tar.gz
cpython-9a37159e51fc436594752ab0e6c6ad4d25df8e4e.tar.bz2
Merged revisions 59595-59604 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk ........ r59596 | brett.cannon | 2007-12-24 20:58:25 +0100 (Mon, 24 Dec 2007) | 4 lines Fix the docstrings of time.localtime() and gmtime() for the tm_mday field. Will backport. ........ r59598 | brett.cannon | 2007-12-25 00:43:30 +0100 (Tue, 25 Dec 2007) | 3 lines Make trailing whitespace explicit (including when it is an all-whitespace line). ........ r59599 | brett.cannon | 2007-12-25 01:14:34 +0100 (Tue, 25 Dec 2007) | 7 lines Actually execute the tests for the getter/setter/deleter tests on properties. Also fix the test by having the test classes inherit from object. Are the getter/setter/deleter attributes supposed to be able to chain? As of right now they can't as the property tries to call what the property returns, which is another property when they are chained. ........ r59600 | brett.cannon | 2007-12-25 07:44:59 +0100 (Tue, 25 Dec 2007) | 2 lines Remove a straggling debugging print line. ........ r59604 | kurt.kaiser | 2007-12-28 05:18:01 +0100 (Fri, 28 Dec 2007) | 2 lines Configure Dialog: improved layout for keybinding. Patch 1457 Tal Einat. ........
Diffstat (limited to 'Lib/test')
-rw-r--r--Lib/test/test_descr.py18
1 files changed, 11 insertions, 7 deletions
diff --git a/Lib/test/test_descr.py b/Lib/test/test_descr.py
index 199a49c..8ccece1 100644
--- a/Lib/test/test_descr.py
+++ b/Lib/test/test_descr.py
@@ -1976,7 +1976,7 @@ def properties():
def properties_plus():
- class C:
+ class C(object):
foo = property(doc="hello")
@foo.getter
def foo(self):
@@ -1991,8 +1991,11 @@ def properties_plus():
assert C.foo.__doc__ == "hello"
assert not hasattr(c, "foo")
c.foo = -42
+ assert hasattr(c, '_foo')
+ assert c._foo == 42
assert c.foo == 42
del c.foo
+ assert not hasattr(c, '_foo')
assert not hasattr(c, "foo")
class D(C):
@@ -2008,20 +2011,20 @@ def properties_plus():
del d.foo
del d.foo
- class E:
+ class E(object):
@property
def foo(self):
return self._foo
@foo.setter
- def foo (self, value):
+ def foo(self, value):
raise RuntimeError
@foo.setter
+ def foo(self, value):
+ self._foo = abs(value)
@foo.deleter
def foo(self, value=None):
- if value is None:
- del self._foo
- else:
- self._foo = abs(value)
+ del self._foo
+
e = E()
e.foo = -42
assert e.foo == 42
@@ -4223,6 +4226,7 @@ def test_main():
recursions()
weakrefs()
properties()
+ properties_plus()
supers()
inherits()
keywords()