def run(self): # Installing required packages, running egg_info and build_ext are # part of normal operation for setuptools.command.test.test. Motor # has no extensions so build_ext is a no-op. if self.distribution.install_requires: self.distribution.fetch_build_eggs( self.distribution.install_requires) if self.distribution.tests_require: self.distribution.fetch_build_eggs(self.distribution.tests_require) self.run_command('egg_info') build_ext_cmd = self.reinitialize_command('build_ext') build_ext_cmd.inplace = 1 self.run_command('build_ext') # Construct a MotorTestRunner directly from the unittest imported from # test (this will be unittest2 under Python 2.6), which creates a # TestResult that supports the 'addSkip' method. setuptools will by # default create a TextTestRunner that uses the old TestResult class, # resulting in DeprecationWarnings instead of skipping tests under 2.6. from test import (unittest, MotorTestLoader, MotorTestRunner, test_environment as testenv) loader = MotorTestLoader() loader.avoid('high_availability', 'Runs separately') if not (testenv.HAVE_ASYNCIO or testenv.HAVE_TORNADO): raise ImportError("No tornado nor asyncio") elif not testenv.HAVE_TORNADO: loader.avoid('tornado_tests', reason='no tornado') elif not testenv.HAVE_ASYNCIO: loader.avoid('asyncio_tests', reason='no asyncio') if self.test_suite is None: suite = loader.discover(self.test_module) else: suite = loader.loadTestsFromName(self.test_suite) runner_kwargs = dict( verbosity=2, failfast=self.failfast, tornado_warnings=self.tornado_warnings) if sys.version_info[:3] >= (3, 2) and unittest.__name__ != 'unittest2': # 'warnings' argument added to TextTestRunner in Python 3.2. runner_kwargs['warnings'] = 'default' runner = MotorTestRunner(**runner_kwargs) result = runner.run(suite) sys.exit(not result.wasSuccessful())
def run(self): # Installing required packages, running egg_info and build_ext are # part of normal operation for setuptools.command.test.test. Motor # has no extensions so build_ext is a no-op. if self.distribution.install_requires: self.distribution.fetch_build_eggs( self.distribution.install_requires) if self.distribution.tests_require: self.distribution.fetch_build_eggs(self.distribution.tests_require) self.run_command('egg_info') build_ext_cmd = self.reinitialize_command('build_ext') build_ext_cmd.inplace = 1 self.run_command('build_ext') # Construct a MotorTestRunner directly from the unittest imported from # test (this will be unittest2 under Python 2.6), which creates a # TestResult that supports the 'addSkip' method. setuptools will by # default create a TextTestRunner that uses the old TestResult class, # resulting in DeprecationWarnings instead of skipping tests under 2.6. from test import unittest, MotorTestRunner if self.test_suite is None: suite = unittest.defaultTestLoader.discover(self.test_module) else: suite = unittest.defaultTestLoader.loadTestsFromName( self.test_suite) runner_kwargs = dict( verbosity=2, failfast=self.failfast, tornado_warnings=self.tornado_warnings) if sys.version_info[:3] >= (3, 2): # 'warnings' argument added to TextTestRunner in Python 3.2. runner_kwargs['warnings'] = 'default' runner = MotorTestRunner(**runner_kwargs) result = runner.run(suite) sys.exit(not result.wasSuccessful())
def run(self): # Installing required packages, running egg_info and build_ext are # part of normal operation for setuptools.command.test.test. Motor # has no extensions so build_ext is a no-op. if self.distribution.install_requires: self.distribution.fetch_build_eggs( self.distribution.install_requires) if self.distribution.tests_require: self.distribution.fetch_build_eggs(self.distribution.tests_require) self.run_command('egg_info') build_ext_cmd = self.reinitialize_command('build_ext') build_ext_cmd.inplace = 1 self.run_command('build_ext') # Construct a MotorTestRunner directly from the unittest imported from # test (this will be unittest2 under Python 2.6), which creates a # TestResult that supports the 'addSkip' method. setuptools will by # default create a TextTestRunner that uses the old TestResult class, # resulting in DeprecationWarnings instead of skipping tests under 2.6. from test import unittest, MotorTestRunner if self.test_suite is None: suite = unittest.defaultTestLoader.discover(self.test_module) else: suite = unittest.defaultTestLoader.loadTestsFromName( self.test_suite) runner_kwargs = dict(verbosity=2, failfast=self.failfast, tornado_warnings=self.tornado_warnings) if sys.version_info[:3] >= (3, 2): # 'warnings' argument added to TextTestRunner in Python 3.2. runner_kwargs['warnings'] = 'default' runner = MotorTestRunner(**runner_kwargs) result = runner.run(suite) sys.exit(not result.wasSuccessful())