def run(self): from snakeoil.dist import unittest_extensions build_ext = self.reinitialize_command('build_ext') build_py = self.reinitialize_command('build_py') build_ext.inplace = build_py.inplace = self.inplace build_ext.force = build_py.force = self.force build_ext.ensure_finalized() build_py.ensure_finalized() if self.include_dirs: build_ext.include_dirs = self.include_dirs if not self.pure_python: self.run_command('build_ext') if not self.inplace: self.run_command('build_py') syspath = sys.path[:] mods_to_wipe = () if not self.inplace: cwd = os.getcwd() syspath = [x for x in sys.path if x != cwd] test_path = os.path.abspath(build_py.build_lib) syspath.insert(0, test_path) mods = build_py.find_all_modules() mods_to_wipe = set(x[0] for x in mods) mods_to_wipe.update('.'.join(x[:2]) for x in mods) namespaces = self.namespaces if not self.namespaces: namespaces = [self.default_test_namespace] retval = unittest_extensions.run_tests(namespaces, disable_fork=self.disable_fork, blacklist=self.blacklist, pythonpath=syspath, modules_to_wipe=mods_to_wipe) # remove temporary plugincache so it isn't installed plugincache = os.path.join(os.path.abspath(build_py.build_lib), build_py.package_namespace, 'plugins/plugincache') if os.path.exists(plugincache): os.remove(plugincache) if retval: raise DistutilsExecError("tests failed; return %i" % (retval, ))
def run(self): from snakeoil.dist import unittest_extensions build_ext = self.reinitialize_command('build_ext') build_py = self.reinitialize_command('build_py') build_ext.inplace = build_py.inplace = self.inplace build_ext.force = build_py.force = self.force build_ext.ensure_finalized() build_py.ensure_finalized() if self.include_dirs: build_ext.include_dirs = self.include_dirs if not self.pure_python: self.run_command('build_ext') if not self.inplace: self.run_command('build_py') syspath = sys.path[:] mods_to_wipe = () if not self.inplace: cwd = os.getcwd() syspath = [x for x in sys.path if x != cwd] test_path = os.path.abspath(build_py.build_lib) syspath.insert(0, test_path) mods = build_py.find_all_modules() mods_to_wipe = set(x[0] for x in mods) mods_to_wipe.update('.'.join(x[:2]) for x in mods) namespaces = self.namespaces if not self.namespaces: namespaces = [self.default_test_namespace] retval = unittest_extensions.run_tests( namespaces, disable_fork=self.disable_fork, blacklist=self.blacklist, pythonpath=syspath, modules_to_wipe=mods_to_wipe) # remove temporary plugincache so it isn't installed plugincache = os.path.join( os.path.abspath(build_py.build_lib), build_py.package_namespace, 'plugins/plugincache') if os.path.exists(plugincache): os.remove(plugincache) if retval: raise DistutilsExecError("tests failed; return %i" % (retval,))