tests: Add some more tests to improve code coverage of corner cases.
This commit is contained in:
parent
97abe22963
commit
e5c4362a98
@ -3,6 +3,10 @@
|
|||||||
# print
|
# print
|
||||||
print(range(4))
|
print(range(4))
|
||||||
|
|
||||||
|
# bool
|
||||||
|
print(bool(range(0)))
|
||||||
|
print(bool(range(10)))
|
||||||
|
|
||||||
# len
|
# len
|
||||||
print(len(range(0)))
|
print(len(range(0)))
|
||||||
print(len(range(4)))
|
print(len(range(4)))
|
||||||
@ -29,3 +33,15 @@ print(range(4)[1:-2:2])
|
|||||||
print(range(1, 2, 3).start)
|
print(range(1, 2, 3).start)
|
||||||
print(range(1, 2, 3).stop)
|
print(range(1, 2, 3).stop)
|
||||||
print(range(1, 2, 3).step)
|
print(range(1, 2, 3).step)
|
||||||
|
|
||||||
|
# bad unary op
|
||||||
|
try:
|
||||||
|
-range(1)
|
||||||
|
except TypeError:
|
||||||
|
print("TypeError")
|
||||||
|
|
||||||
|
# bad subscription (can't store)
|
||||||
|
try:
|
||||||
|
range(1)[0] = 1
|
||||||
|
except TypeError:
|
||||||
|
print("TypeError")
|
||||||
|
@ -29,3 +29,6 @@ test_exc("[].sort(noexist=1)", TypeError)
|
|||||||
|
|
||||||
# function with keyword args not given a specific keyword arg
|
# function with keyword args not given a specific keyword arg
|
||||||
test_exc("enumerate()", TypeError)
|
test_exc("enumerate()", TypeError)
|
||||||
|
|
||||||
|
# kw given for positional, but a different positional is missing
|
||||||
|
test_exc("def f(x, y): pass\nf(x=1)", TypeError)
|
||||||
|
@ -20,3 +20,13 @@ try:
|
|||||||
next(it)
|
next(it)
|
||||||
except StopIteration:
|
except StopIteration:
|
||||||
pass
|
pass
|
||||||
|
|
||||||
|
# this class raises a non-StopIteration exception on iteration
|
||||||
|
class A:
|
||||||
|
def __getitem__(self, i):
|
||||||
|
raise TypeError
|
||||||
|
try:
|
||||||
|
for i in A():
|
||||||
|
pass
|
||||||
|
except TypeError:
|
||||||
|
print("TypeError")
|
||||||
|
@ -49,10 +49,22 @@ try:
|
|||||||
except TypeError:
|
except TypeError:
|
||||||
print("TypeError")
|
print("TypeError")
|
||||||
|
|
||||||
|
# enough args, but kw is wrong
|
||||||
|
try:
|
||||||
|
t = T(1, baz=3)
|
||||||
|
except TypeError:
|
||||||
|
print("TypeError")
|
||||||
|
|
||||||
|
# bad argument for member spec
|
||||||
|
try:
|
||||||
|
namedtuple('T', 1)
|
||||||
|
except TypeError:
|
||||||
|
print("TypeError")
|
||||||
|
|
||||||
# Try single string
|
# Try single string
|
||||||
# Not implemented so far
|
T3 = namedtuple("TupComma", "foo bar")
|
||||||
#T3 = namedtuple("TupComma", "foo bar")
|
t = T3(1, 2)
|
||||||
#t = T3(1, 2)
|
print(t.foo, t.bar)
|
||||||
|
|
||||||
# Try single string with comma field seperator
|
# Try single string with comma field seperator
|
||||||
# Not implemented so far
|
# Not implemented so far
|
||||||
|
@ -37,3 +37,6 @@ print(struct.pack("<I", 0xffffffff))
|
|||||||
# check maximum unpack
|
# check maximum unpack
|
||||||
print(struct.unpack("<I", b"\xff\xff\xff\xff"))
|
print(struct.unpack("<I", b"\xff\xff\xff\xff"))
|
||||||
print(struct.unpack("<Q", b"\xff\xff\xff\xff\xff\xff\xff\xff"))
|
print(struct.unpack("<Q", b"\xff\xff\xff\xff\xff\xff\xff\xff"))
|
||||||
|
|
||||||
|
# network byte order
|
||||||
|
print(struct.pack('!i', 123))
|
||||||
|
@ -23,3 +23,9 @@ exp = b"hello"
|
|||||||
out = zlib.decompress(v, -15)
|
out = zlib.decompress(v, -15)
|
||||||
assert(out == exp)
|
assert(out == exp)
|
||||||
print(exp)
|
print(exp)
|
||||||
|
|
||||||
|
# this should error
|
||||||
|
try:
|
||||||
|
zlib.decompress(b'abc')
|
||||||
|
except Exception:
|
||||||
|
print("Exception")
|
||||||
|
Loading…
x
Reference in New Issue
Block a user