Somewhere along the way, the softspace attr of file objects became read-
only. Repaired, and added new tests to test_file.py.
This commit is contained in:
parent
d72312857e
commit
015dd82136
@ -5,6 +5,26 @@ from array import array
|
|||||||
from test.test_support import verify, TESTFN, TestFailed
|
from test.test_support import verify, TESTFN, TestFailed
|
||||||
from UserList import UserList
|
from UserList import UserList
|
||||||
|
|
||||||
|
# verify expected attributes exist
|
||||||
|
f = file(TESTFN, 'w')
|
||||||
|
softspace = f.softspace
|
||||||
|
f.name # merely shouldn't blow up
|
||||||
|
f.mode # ditto
|
||||||
|
f.closed # ditto
|
||||||
|
|
||||||
|
# verify softspace is writable
|
||||||
|
f.softspace = softspace # merely shouldn't blow up
|
||||||
|
|
||||||
|
# verify the others aren't
|
||||||
|
for attr in 'name', 'mode', 'closed':
|
||||||
|
try:
|
||||||
|
setattr(f, attr, 'oops')
|
||||||
|
except TypeError:
|
||||||
|
pass
|
||||||
|
else:
|
||||||
|
raise TestFailed('expected TypeError setting file attr %r' % attr)
|
||||||
|
f.close()
|
||||||
|
|
||||||
# verify writelines with instance sequence
|
# verify writelines with instance sequence
|
||||||
l = UserList(['1', '2'])
|
l = UserList(['1', '2'])
|
||||||
f = open(TESTFN, 'wb')
|
f = open(TESTFN, 'wb')
|
||||||
|
@ -12,6 +12,9 @@ What's New in Python 2.3 beta 2?
|
|||||||
Core and builtins
|
Core and builtins
|
||||||
-----------------
|
-----------------
|
||||||
|
|
||||||
|
- The softspace attribute of file objects became read-only by oversight.
|
||||||
|
It's writable again.
|
||||||
|
|
||||||
Extension modules
|
Extension modules
|
||||||
-----------------
|
-----------------
|
||||||
|
|
||||||
|
@ -1962,7 +1962,8 @@ PyTypeObject PyFile_Type = {
|
|||||||
0, /* tp_call */
|
0, /* tp_call */
|
||||||
0, /* tp_str */
|
0, /* tp_str */
|
||||||
PyObject_GenericGetAttr, /* tp_getattro */
|
PyObject_GenericGetAttr, /* tp_getattro */
|
||||||
0, /* tp_setattro */
|
/* softspace is writable: we must supply tp_setattro */
|
||||||
|
PyObject_GenericSetAttr, /* tp_setattro */
|
||||||
0, /* tp_as_buffer */
|
0, /* tp_as_buffer */
|
||||||
Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE, /* tp_flags */
|
Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE, /* tp_flags */
|
||||||
file_doc, /* tp_doc */
|
file_doc, /* tp_doc */
|
||||||
|
Loading…
x
Reference in New Issue
Block a user