def __test__(verbose=False): #------------------------------------------------------------------------------- """ used for automated module testing. see L{tester} """ import pylib.tester as tester c = Cache(3) c['a'] = 'a' c['b'] = 'b' c['c'] = 'c' c['a'] c['d'] = 'd' tester.Assert( str(c) == str({ u'a': (4, u'a'), u'c': (3, u'c'), u'd': (5, u'd') })) c['d'] = 'd' c['e'] = 'e' tester.Assert( str(c) == str({ u'a': (4, u'a'), u'e': (7, u'e'), u'd': (6, u'd') })) return 0
def __test__(verbose=False): #------------------------------------------------------------------------------- """ used for automated module testing. see L{tester} """ import pylib.tester as tester #- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - class cool(TableObject): #- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - sara = ColumnInteger() amy = ColumnText() def __init__(self, sara=None, amy=None): TableObject.__init__(self) self.sara = sara self.amy = amy def __str__(self): return str(self.sara) + ' ' + str(self.amy) db = DB() tbl = db.getTable('boo', ObjClass=cool) if not tbl.exists: tbl.create() for i in db.getTables(): tbl1 = db.getTable(i[2]) tester.Assert(str(tbl1) == "boo -- [u'amy:TEXT', u'sara:INTEGER']") tt = tbl.insert(cool(5, 'wife')) tbl.insert(cool(7, 'what')) ans = ['5 wife', '7 what'] for idx, to in enumerate(tbl.get()): tester.Assert(str(to) == ans[idx]) to = tbl.getOne("where amy='wife'") tester.Assert(str(to) == '5 wife') tester.Assert(str(tt) == '5 wife') to.sara = 13 to.update() ans = ['13 wife', '7 what'] for idx, to in enumerate(tbl.get()): tester.Assert(str(to) == ans[idx]) db.close() return 0
def work(arg): while 1: delay = random.randint(0, 5) msg = arg.lmwt.getMsg() tester.Assert(msg not in arg.seen) arg.seen.add(msg) if verbose: print(msg, 'delaying: ', delay) arg.count += 1 time.sleep(delay)
def __test__(verbose=False): #------------------------------------------------------------------------------- """ used for automated module testing. see L{tester} """ import pylib.tester as tester fileName = oss.tmpfile() with open(fileName, 'w') as otf: otf.write('sara aidan boo connor') ts0 = set([1, 3, 5, 6, 7, 10]) saveDB(fileName, ts0) ts1 = loadDB(fileName) tester.Assert(ts0 == ts1) with open(fileName, 'w') as otf: otf.write('sara aidan boo connor stuff') ts1 = loadDB(fileName) tester.Assert(set() == ts1) return 0
def __test__(verbose=False): #------------------------------------------------------------------------------- """ used for automated module testing. see L{tester} """ import pylib.tester as tester import random for i in range(100): n = random.randint(0, 9999999999999999999999999999999999999999999) s = cvtNum2QChars(n) a = cvtQChars2Num(s) print(s, a) tester.Assert(n == a) for i in range(100): n = random.randint(0, 9999999) s = cvtNum2QChars(n) a = cvtQChars2Num(s) print(s, a) tester.Assert(n == a) return 0
def __test__(): #------------------------------------------------------------------------------- """ used for automated module testing. see L{tester} """ import pylib.tester as tester tester.Assert(CalcHexDistance(3, 3, 4, 1), 3) tester.Assert(CalcHexDistance(2, 4, 4, 1), 4) tester.Assert(CalcHexDistance(1, 4, 4, 1), 5) tester.Assert(CalcHexDistance(0, 5, 4, 1), 6) tester.Assert(CalcHexDistance(3, 3, 5, 0), 4) tester.Assert(CalcHexDistance(2, 4, 5, 0), 5) tester.Assert(CalcHexDistance(1, 4, 5, 0), 6) tester.Assert(CalcHexDistance(0, 5, 5, 0), 7) return 0
def __test__(verbose=False): #------------------------------------------------------------------------------- """ used for automated module testing. see L{tester} """ import time import random import pylib.tester as tester class TestObj(object): def __init__(self): self.lmwt = None self.count = 0 self.seen = set() def work(arg): while 1: delay = random.randint(0, 5) msg = arg.lmwt.getMsg() tester.Assert(msg not in arg.seen) arg.seen.add(msg) if verbose: print(msg, 'delaying: ', delay) arg.count += 1 time.sleep(delay) arg = TestObj() lmwt = LastMessageWorkerThread(work, 'work', (arg, )) arg.lmwt = lmwt lmwt.start() for i in range(100): lmwt.setMsg(i) time.sleep(0.5) time.sleep(10) if verbose: print('Count:', arg.count) tester.Assert(arg.count > 8) return 0
def __test__(): #------------------------------------------------------------------------------- import pylib.tester as tester v2 = vector(1.3, 2, 3.1) tester.Assert(v2.crossProduct(v2) == vector.ZERO) tester.Assert(v2 + v2 != 2.1 * v2) tester.Assert(v2 + v2 == 2 * v2) tester.Assert(v2 - v2 == vector.ZERO) tester.Assert( vector([1, 0, 0]) * vector(point((0, 1, 0))) == vector(vector(0, 0, 1))) tester.Assert(vector([v for v in vector.ONE]) == vector.ONE)
def __test__(verbose=False): #------------------------------------------------------------------------------- """ used for automated module testing. see L{tester} """ import pylib.tester as tester fw = FileWalker(['sara', 'boo', 'aidan', 'connor'], 'orig') results = [] for idx, i in enumerate(fw): if idx == 2: fw.add(['amy', 'chris'], 'new') results.append(i) answer = [(u'orig', 1, u'sara'), (u'orig', 2, u'boo'), (u'orig', 3, u'aidan'), (u'new', 1, u'amy'), (u'new', 2, u'chris'), (u'orig', 4, u'connor')] tester.Assert(results == answer) return 0
def __test__(verbose=None): #------------------------------------------------------------------------------- """ used for automated module testing. see L{tester} """ import pylib.tester as tester tp = SingleThreadPool(3) tester.Assert(__test(tp, 0, verbose)) tester.Assert(__test(tp, 1, verbose)) tp = ThreadPool(3) tester.Assert(__test(tp, 0, verbose)) tester.Assert(__test(tp, 1, verbose)) tp = ProcessPool(3) tester.Assert(__test(tp, 0, verbose)) tester.Assert(__test(tp, 1, verbose)) return 1
def __test__(verbose=False): #------------------------------------------------------------------------------- """ used for automated module testing. see L{tester} """ import pylib.tester as tester class TException(Exception): pass def usage(rc, s=''): raise TException(s) t = ['-caa', '--sara', 'cool', 'filename', '--cool', '-5', '-a', '-a'] args, opts = mopt(t, [('c', 'cat')], ['cool', 'sara'], ['a'], [], "cool") tester.Assert(opts.get('cool', 0, int) == 0) tester.Assert(len(opts.a) == 2) args, opts = mopt(t, [('c', 'cat')], ['cool', 'sara'], ['a'], [], 'this is the prgm', nonOpStopOp=False) tester.Assert(opts.get('cool', 0, int) == -5) tester.Assert(len(opts.a) == 4) args, opts = mopt(t, [('c', 'cat'), 'a'], ['cool', 'sara'], 'this is the prgm', nonOpStopOp=False) tester.Assert(opts.get('cool', 0, int) == -5) tester.AssertRecvException(AttributeError, opts.get, ('b', )) tester.AssertRecvException(TException, mopt, (t, [('c', 'cat')], ['cool', 'sara'], usage)) tester.AssertRecvException(TException, mopt, (['--help'], [('c', 'cat')], ['cool', 'sara'], usage)) tester.AssertRecvException(TException, mopt, (['-?'], [('c', 'cat')], ['cool', 'sara'], usage)) args, opts = mopt(t, [('c', 'cat')], ['cool'], 'this is the prgm', nonOpStopOp=False, skipUnknownOps=True) tester.Assert(opts.get('cool', 0, int) == -5) tester.Assert(args == ['-a', '-a', '--sara', 'cool', 'filename', '-a', '-a']) # test opts as first param arg, opts = mopt(opts, [], [], ['a'], ['sara'], '', nonOpStopOp=False) tester.Assert(opts.validate({'a': [True, True, True, True], 'sara': ['cool'], 'cat': True, '_usageStr_': 'this is the prgm', 'cool': u'-5', '_args_': [u'filename'], '_cmdline_': ['-a', '-a', '--sara', 'cool', 'filename', '-a', '-a']})) arg, opts = mopt(opts, [], [], ['a'], ['sara'], nonOpStopOp=False) tester.Assert(opts.validate({'a': [True, True, True, True], 'sara': ['cool'], 'cat': True, '_usageStr_': 'this is the prgm', '_args_': ['filename'], 'cool': '-5', '_cmdline_': ['filename']})) arg, opts = mopt(opts, [], [], ['a'], ['sara'], '', nonOpStopOp=False) tester.Assert(opts.validate({'a': [True, True, True, True], 'sara': ['cool'], 'cat': True, '_usageStr_': 'this is the prgm', '_args_': ['filename'], 'cool': '-5', '_cmdline_': ['filename']})) arg, opts = mopt(opts, [], [], ['a'], ['sara'], nonOpStopOp=False) tester.Assert(opts.validate({'a': [True, True, True, True], 'sara': ['cool'], 'cat': True, '_usageStr_': 'this is the prgm', '_args_': ['filename'], 'cool': '-5', '_cmdline_': ['filename']})) arg, opts = mopt(opts, ['c', 'cool'], []) tester.Assert(opts.validate({'a': [True, True, True, True], 'c': None, 'sara': ['cool'], 'cat': True, '_usageStr_': u'this is the prgm', '_args_': ['filename'], 'cool': '-5', '_cmdline_': ['filename']})) tester.Assert('c' not in opts) tester.Assert('cat' in opts) tester.Assert(opts['cat'] is True) t = ['-cool', '-run', '5', 'stuff'] args, opts = mopt(t, ['cool'], ['run'], 'this is the prgm', allowMultiChar=True) tester.Assert(opts.validate({'_usageStr_': 'this is the prgm', 'run': '5', '_args_': ['stuff'], 'cool': True, '_cmdline_': ['-cool', '-run', '5', 'stuff']})) t = ['/cool', '/run', '5', 'stuff'] args, opts = mopt(t, ['cool'], ['run'], 'this is the prgm', allowMultiChar=True, shortOpMarker='/') tester.Assert(opts.validate({'_usageStr_': 'this is the prgm', 'run': '5', '_args_': ['stuff'], 'cool': True, '_cmdline_': ['/cool', '/run', '5', 'stuff']})) t = ['--sara', 'boo'] args, opts = mopt(t, ['sara'], ['sara'], 'this is the prgm') tester.Assert(opts.validate({'_usageStr_': 'this is the prgm', 'sara': 'boo', '_args_': [], '_cmdline_': ['--sara', 'boo']})) args, opts = mopt(t, ['sara'], ['sara'], usage) tester.AssertRecvException(TException, opts.get, ('sara', '', float)) t = ['--sara'] args, opts = mopt(t, ['sara'], ['sara'], 'this is the prgm') tester.Assert(opts.validate({'_usageStr_': 'this is the prgm', 'sara': True, '_args_': [], '_cmdline_': ['--sara']})) args, opts = mopt(['*.py'], ['sara'], ['sara'], 'this is the prgm') tester.AssertRecvException(TypeError, mopt, (['--help'], [('c', 'cat')])) args, opts = mopt(['*.py'], ['sara'], ['sara'], 'this is the prgm') tester.Assert('options.py' in args) args, opts = mopt(['"*.py"'], ['sara'], ['sara'], 'this is the prgm') tester.Assert('*.py' in args) args, opts = mopt(['coo[123].py'], ['sara'], ['sara'], 'this is the prgm') args, opts = mopt(['*.py'], ['sara'], ['sara'], 'this is the prgm', expandWildCards=False) tester.Assert('*.py' in args) args, opts = mopt(['*.py'], ['sara'], ['sara'], 'this is the prgm', expandWildCards=False, nonOpStopOp=False) tester.Assert('*.py' in args) t = ['-c', '-r', '5', 'stuff'] args, opts = mopt(t, [('c', 'cool')], [('r','run')], 'this is the prgm') tester.Assert(opts.validate({'_usageStr_': 'this is the prgm', 'run': '5', '_args_': ['stuff'], 'cool': True, '_cmdline_': ['-c', '-r', '5', 'stuff']})) t = ['-s'] args, opts = mopt(t, ['s'], ['s'], 'this is the prgm') tester.Assert(opts.validate({'_usageStr_': 'this is the prgm', 's': True, '_args_': [], '_cmdline_': ['-s']})) t = ['-s', 'boo'] args, opts = mopt(t, ['s'], ['s'], 'this is the prgm') tester.Assert(opts.validate({'_usageStr_': 'this is the prgm', 's': 'boo', '_args_': [], '_cmdline_': ['-s', 'boo']})) t = ['-s'] args, opts = mopt(t, [], [], ['s'], ['s'], 'this is the prgm') tester.Assert(opts.validate({'_usageStr_': 'this is the prgm', 's': [True], '_args_': [], '_cmdline_': ['-s']})) t = ['-s', 'boo'] args, opts = mopt(t, [], [], ['s'], ['s'], 'this is the prgm') tester.Assert(opts.validate({'_usageStr_': 'this is the prgm', 's': ['boo'], '_args_': [], '_cmdline_': ['-s', 'boo']})) t = ['--sara'] args, opts = mopt(t, [], [], ['sara'], ['sara'], 'this is the prgm') tester.Assert(opts.validate({'_usageStr_': 'this is the prgm', 'sara': [True], '_args_': [], '_cmdline_': ['--sara']})) t = ['--sara', 'boo'] args, opts = mopt(t, [], [], ['sara'], ['sara'], 'this is the prgm') tester.Assert(opts.validate({'_usageStr_': 'this is the prgm', 'sara': ['boo'], '_args_': [], '_cmdline_': ['--sara', 'boo']})) t = ['--sara', 'boo', '--', '--cool'] args, opts = mopt(t, [], [], ['sara'], ['sara']) tester.Assert(opts.validate({'_usageStr_': '', 'sara': ['boo'], '_args_': ['--cool'], '_cmdline_': ['--sara', 'boo', '--', '--cool']})) t = ['--sara', 'boo', '--', '--cool'] args, opts = mopt(t, [], [], ['sara'], ['sara'], expandWildCards=False) tester.Assert(opts.validate({'_usageStr_': '', 'sara': ['boo'], '_args_': ['--cool'], '_cmdline_': ['--sara', 'boo', '--', '--cool']})) t = ['--sara', '--', '--cool'] args, opts = mopt(t, [], [], ['sara'], [], expandWildCards=False) tester.Assert(opts.validate({'_usageStr_': '', 'sara': [True], '_args_': ['--cool'], '_cmdline_': ['--sara', '--', '--cool']})) t = ['--sara'] tester.AssertRecvException(TException, mopt, (t, [], [('s', 'sara')], usage)) t = ['-s'] tester.AssertRecvException(TException, mopt, (t, [], [('s', 'sara')], usage)) t = ['--sara'] tester.AssertRecvException(TException, mopt, (t, [], [], [], [('s', 'sara')], usage)) t = ['-s'] tester.AssertRecvException(TException, mopt, (t, [], [], [], [('s', 'sara')], usage)) tester.AssertRecvException(TypeError, mopt, (t, [], [], [('s', 'sara')], usage)) t = ['---sara', '---', '---cool'] args, opts = mopt(t, [], [], ['sara'], [], expandWildCards=False, longOpMarker='---') tester.Assert(opts.validate({'_usageStr_': '', 'sara': [True], '_args_': ['---cool'], '_cmdline_': ['---sara', '---', '---cool']})) t = ['---sara', '-s', '-d'] args, opts = mopt(t, [], [], ['sara'], [], expandWildCards=False, longOpMarker='---', shortOpMarker='---') tester.Assert(opts.validate({'_usageStr_': '', 'sara': [True], '_args_': ['-s', '-d'], '_cmdline_': ['---sara', '-s', '-d']})) return 0
<ul> <li><a html="date_cool.html">cool</a></li> <li><a html="date_aidan.html">cool</a></li> <li><a html="date_cool.html">aidan</a></li> <li><a html="date_aidan.html">aidan</a></li> </ul> """ ### print "'%s'" % val ### print "'%s'" % good ### ### for idx, ch in enumerate(val): ### if good[idx] != ch: ### print "error", idx, "'%s'" % ch, "'%s'" % good[idx] tester.Assert(val == good, "Substitution Comparison Failed") tmp = Template('cvs.exe ci\n$$$ if msg:\n-m "$msg"\n$$$ end\n$file') tmp.dbg = 0 try: val1 = tmp.sub({'msg': '', 'file': 'cool'}, ' ') val2 = tmp.sub({'msg': 'cool', 'file': 'ff'}, ' ') except TemplateException: print tmp.printErrors() raise tester.Assert(val1 == 'cvs.exe ci cool', "Substitution Comparison Failed 1") tester.Assert(val2 == 'cvs.exe ci -m "cool" ff', "Substitution Comparison Failed 2")
def __test__(): #------------------------------------------------------------------------------- tester.Assert(eq("bob", "[_a-zA-Z][_a-zA-Z0-9]+")) tester.Assert(not eq("bob ", "[_a-zA-Z][_a-zA-Z0-9]+")) tester.Assert(not eq(" bob ", "[_a-zA-Z][_a-zA-Z0-9]+")) tester.Assert(not eq("bib ", "[_a-zA-Z][_a-zA-Z0-9]+")) s = " cool $$% dogf$!d$!" sf = scanf(s) tester.Assert(not sf.scan("cool 100% dogfood") == ('100', )) tester.Assert(sf.scan(" cool 100% dogfodfdfdod ") == ('100', )) tester.Assert(sf.scan(" cool a% dogfodfdfod ") == ('a', )) tester.Assert( sf.scan( " cool 1234 6% dogfooddddddddddddddddddddddddddddd" ) == ('1234 6', )) s = "warning: line $$, column $$" sf = scanf(s) tester.Assert(sf.scan("warning: line 31, column 42") == ('31', '42')) rex = CvtFileWildCardToRE('*.py;data?.dat') ee = reCmp(rex) rex = CvtFileWildCardToRE('*.py') tester.Assert(ee.eq('C:/bad/cool.py')) tester.Assert(ee.eq('C:\\bad\\cool.py')) tester.Assert(not ee.eq('da3ta5.dat')) tester.Assert(ee.eq('data5.dat')) tester.Assert(eq('C:/bad/cool.py', rex)) tester.Assert(eq('C:\\bad\\cool.py', rex)) tester.Assert( strPartition('==|-=', 'this is a "very cool" == test -= """more stuff"""') == [[ 'this', 'is', 'a', 'very cool' ], ['=='], ['test'], ['-='], ['more stuff']])