我们从Python开源项目中,提取了以下28个代码示例,用于说明如何使用test.test_support()。
def cleanup_testfn(self): path = test.test_support.TESTFN if os.path.isfile(path): os.remove(path) elif os.path.isdir(path): shutil.rmtree(path)
def test_parse_makefile_base(self): self.makefile = test.test_support.TESTFN fd = open(self.makefile, 'w') try: fd.write(r"CONFIG_ARGS= '--arg1=optarg1' 'ENV=LIB'" '\n') fd.write('VAR=$OTHER\nOTHER=foo') finally: fd.close() d = sysconfig.parse_makefile(self.makefile) self.assertEqual(d, {'CONFIG_ARGS': "'--arg1=optarg1' 'ENV=LIB'", 'OTHER': 'foo'})
def test_parse_makefile_literal_dollar(self): self.makefile = test.test_support.TESTFN fd = open(self.makefile, 'w') try: fd.write(r"CONFIG_ARGS= '--arg1=optarg1' 'ENV=\$$LIB'" '\n') fd.write('VAR=$OTHER\nOTHER=foo') finally: fd.close() d = sysconfig.parse_makefile(self.makefile) self.assertEqual(d, {'CONFIG_ARGS': r"'--arg1=optarg1' 'ENV=\$LIB'", 'OTHER': 'foo'})
def test_main(): global TEST_ALL TEST_ALL = test.test_support.is_resource_enabled("cpu") test.test_support.run_unittest(CompilerTest)
def test_import_name_binding(self): # import x.y.z binds x in the current namespace. import test as x import test.test_support assert(x == test) assert(hasattr(test.test_support, "__file__")) # import x.y.z as w binds z as w. import test.test_support as y assert(y == test.test_support)
def test_iterator_pickle(self): # Userlist iterators don't support pickling yet since # they are based on generators. data = self.type2test([4, 5, 6, 7]) for proto in range(pickle.HIGHEST_PROTOCOL + 1): itorg = iter(data) d = pickle.dumps(itorg, proto) it = pickle.loads(d) self.assertEqual(type(itorg), type(it)) self.assertEqual(self.type2test(*it), self.type2test(data)) it = pickle.loads(d) next(it) d = pickle.dumps(it) self.assertEqual(self.type2test(*it), self.type2test(data)[1:]) # def test_reversed_pickle(self): # data = self.type2test([4, 5, 6, 7]) # for proto in range(pickle.HIGHEST_PROTOCOL + 1): # itorg = reversed(data) # d = pickle.dumps(itorg, proto) # it = pickle.loads(d) # self.assertEqual(type(itorg), type(it)) # self.assertEqual(self.type2test(*it), self.type2test(reversed(data))) # # it = pickle.loads(d) # next(it) # d = pickle.dumps(it, proto) # self.assertEqual(self.type2test(*it), self.type2test(reversed(data))[1:])
def testCompileLibrary(self): # A simple but large test. Compile all the code in the # standard library and its test suite. This doesn't verify # that any of the code is correct, merely the compiler is able # to generate some kind of code for it. next_time = time.time() + _PRINT_WORKING_MSG_INTERVAL # warning: if 'os' or 'test_support' are moved in some other dir, # they should be changed here. libdir = os.path.dirname(os.__file__) testdir = os.path.dirname(test.test_support.__file__) for dir in [testdir]: for basename in "test_os.py",: # Print still working message since this test can be really slow if next_time <= time.time(): next_time = time.time() + _PRINT_WORKING_MSG_INTERVAL print >>sys.__stdout__, \ ' testCompileLibrary still working, be patient...' sys.__stdout__.flush() if not basename.endswith(".py"): continue if not TEST_ALL and random() < 0.98: continue path = os.path.join(dir, basename) if test.test_support.verbose: print "compiling", path f = open(path, "U") buf = f.read() f.close() if "badsyntax" in basename or "bad_coding" in basename: self.assertRaises(SyntaxError, compiler.compile, buf, basename, "exec") else: try: compiler.compile(buf, basename, "exec") except Exception, e: args = list(e.args) args.append("in file %s]" % basename) #args[0] += "[in file %s]" % basename e.args = tuple(args) raise