Mercurial > cpython-lru_cache-weakref
view Lib/test/test_userstring.py @ 16413:8819867f14ef legacy-trunk
Patch derived from Trent's 101162: a Python/C API testing framework.
STILL NEEDS UNIX BUILD CHANGES.
| author | Tim Peters <tim.peters@gmail.com> |
|---|---|
| date | Fri, 02 Feb 2001 05:57:15 +0000 |
| parents | e59b835ad89a |
| children | b3d923a66152 |
line wrap: on
line source
#!/usr/bin/env python import sys, string from test_support import verbose import string_tests # UserString is a wrapper around the native builtin string type. # UserString instances should behave similar to builtin string objects. # The test cases were in part derived from 'test_string.py'. from UserString import UserString if __name__ == "__main__": verbose = 0 tested_methods = {} def test(methodname, input, *args): global tested_methods tested_methods[methodname] = 1 if verbose: print '%s.%s(%s) ' % (input, methodname, args), u = UserString(input) objects = [input, u, UserString(u)] res = [""] * 3 for i in range(3): object = objects[i] try: f = getattr(object, methodname) res[i] = apply(f, args) except: res[i] = sys.exc_type if res[0] != res[1]: if verbose: print 'no' print `input`, f, `res[0]`, "<>", `res[1]` else: if verbose: print 'yes' if res[1] != res[2]: if verbose: print 'no' print `input`, f, `res[1]`, "<>", `res[2]` else: if verbose: print 'yes' string_tests.run_method_tests(test)
