view Lib/test/test_structseq.py @ 22360:c8a6ea00a9e1 legacy-trunk

restructure a bit to not rely on test case execution ordering add test case for bug #482460
author Skip Montanaro <skip@pobox.com>
date Sun, 17 Mar 2002 23:03:42 +0000
parents 42862169541f
children aa0d2d51fbde
line wrap: on
line source

from test_support import vereq

import time

t = time.gmtime()
astuple = tuple(t)
vereq(len(t), len(astuple))
vereq(t, astuple)

# Check that slicing works the same way; at one point, slicing t[i:j] with
# 0 < i < j could produce NULLs in the result.
for i in range(-len(t), len(t)):
    for j in range(-len(t), len(t)):
        vereq(t[i:j], astuple[i:j])

# Devious code could crash structseqs' contructors
class C:
    def __getitem__(self, i):
        raise IndexError
    def __len__(self):
        return 9

try:
    repr(time.struct_time(C()))
except:
    pass

# XXX more needed