Commit b7a7731e authored by Jeremy Hylton's avatar Jeremy Hylton

Add tests for getattr() and hasattr() with non-string args

parent 302b54ac
......@@ -256,10 +256,28 @@ if float(u" \u0663.\u0661\u0664 ") != 3.14:
print 'getattr'
import sys
if getattr(sys, 'stdout') is not sys.stdout: raise TestFailed, 'getattr'
try:
getattr(sys, 1)
except TypeError:
pass
else:
raise TestFailed, "getattr(sys, 1) should raise an exception"
try:
getattr(sys, 1, "foo")
except TypeError:
pass
else:
raise TestFailed, 'getattr(sys, 1, "foo") should raise an exception'
print 'hasattr'
import sys
if not hasattr(sys, 'stdout'): raise TestFailed, 'hasattr'
try:
hasattr(sys, 1)
except TypeError:
pass
else:
raise TestFailed, "hasattr(sys, 1) should raise an exception"
print 'hash'
hash(None)
......
......@@ -205,6 +205,12 @@ print 'setattr'
import sys
setattr(sys, 'spam', 1)
if sys.spam != 1: raise TestFailed, 'setattr(sys, \'spam\', 1)'
try:
setattr(sys, 1, 'spam')
except TypeError:
pass
else:
raise TestFailed, "setattr(sys, 1, 'spam') should raise exception"
print 'str'
if str('') != '': raise TestFailed, 'str(\'\')'
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment