def test07_prepareTestEnvironment_nonexistent_test_output_parent_folder_raises_SystemExit( self): with self.assertRaises(SystemExit): settings = vfxtest.collectSettings( ['--cfg', './test_output-non-existent-parent-folder.cfg']) settings['test_no_pythonpath'] = True vfxtest.prepareTestEnvironment(settings)
def test08_runNative_in_subfolder_works_as_expected(self): settings = vfxtest.collectSettings(['--target', './python']) vfxtest.prepareTestEnvironment(settings) vfxtest.runNative(settings=settings) self.assertEqual(settings['files_run'], 1) self.assertEqual(settings['tests_run'], 3) self.assertEqual(settings['errors'], 0)
def test07_runNative_with_limit_works_as_expected(self): settings = vfxtest.collectSettings(['--limit', '1']) vfxtest.prepareTestEnvironment(settings) vfxtest.runNative(settings=settings, use_coverage=False) self.assertEqual(settings['files_run'], 1) self.assertEqual(settings['tests_run'], 3) self.assertEqual(settings['errors'], 0)
def test09_runNative_no_tests_at_all_does_not_try_to_report_coverage(self): settings = vfxtest.collectSettings(['--target', './python']) settings['filter_tokens'].append('does-not-get-matched') vfxtest.prepareTestEnvironment(settings) vfxtest.runNative(settings=settings) self.assertEqual(settings['files_run'], 0) self.assertEqual(settings['tests_run'], 0) self.assertEqual(settings['errors'], 0)
def test02_runNative_with_filter_tokens_runs_successfully(self): settings = vfxtest.collectSettings([ '--target', '.', '_01', ]) vfxtest.prepareTestEnvironment(settings) vfxtest.runNative(settings=settings, use_coverage=False) self.assertEqual(settings['files_run'], 1) self.assertEqual(settings['tests_run'], 3) self.assertEqual(settings['errors'], 0)
def test10_runNative_with_failfast_stops_on_first_error(self): settings = vfxtest.collectSettings(['--failfast', 'true']) print(settings['failfast']) print(settings['target']) vfxtest.prepareTestEnvironment(settings) with mock.patch('awesome_module.buzz', side_effect=Exception()): vfxtest.runNative(settings=settings, use_coverage=False) self.assertEqual(settings['files_run'], 1) self.assertEqual(settings['tests_run'], 2) self.assertEqual(settings['errors'], 1)
def test08_prepareTestEnvironment_nonexistent_test_output_folder_gets_created( self): if os.path.exists('./remove_me'): shutil.rmtree('./remove_me') settings = vfxtest.collectSettings( ['--cfg', './test_output-create-folder.cfg']) settings['test_no_pythonpath'] = True vfxtest.prepareTestEnvironment(settings, ) self.assertTrue(os.path.exists('./remove_me')) shutil.rmtree('./remove_me')
def test01_runNative_runs_successfully(self): settings = vfxtest.collectSettings() vfxtest.prepareTestEnvironment(settings) cov_file = os.path.abspath('{}/.coverage.native'.format( settings['output_folder'])) if os.path.exists(cov_file): os.remove(cov_file) vfxtest.runNative(settings=settings, use_coverage=True) self.assertEqual(settings['files_run'], 2) self.assertEqual(settings['tests_run'], 6) self.assertEqual(settings['errors'], 0) self.assertTrue(os.path.exists(cov_file))
def test14_prepareTestEnvironment_without_python_contexts_still_preps_pythonpath_or_throws_EnvironmentError( self): if os.path.exists('./no_python_contexts'): shutil.rmtree('./no_python_contexts') settings = vfxtest.collectSettings( ['--cfg', './test_no-python-contexts.cfg']) # Python 2.x if sys.version.startswith('2.'): vfxtest.prepareTestEnvironment(settings) proof = './no_python_contexts/_dcc_settings/PYTHONPATH/mock/mock.py' self.assertTrue(os.path.exists(proof)) elif sys.version.startswith('3.'): with self.assertRaises(EnvironmentError): vfxtest.prepareTestEnvironment(settings) else: raise EnvironmentError('Python version not tested: {}'.format( sys.version)) shutil.rmtree('./no_python_contexts')
def test03_combineCoverages_works_as_expected(self): settings = vfxtest.collectSettings([ '_02', ]) vfxtest.prepareTestEnvironment(settings) settings['context'] = 'differentContext' vfxtest.runNative(settings=settings) self.assertEqual(settings['files_run'], 1) self.assertEqual(settings['tests_run'], 3) self.assertTrue( os.path.exists('{}/.coverage.differentContext'.format( settings['output_folder']))) settings = vfxtest.collectSettings() vfxtest.combineCoverages(settings) self.assertFalse( os.path.exists('{}/.coverage.differentContext'.format( settings['output_folder']))) self.assertTrue( os.path.exists('{}/.coverage'.format(settings['output_folder'])))
def test05_resolveContext_defaults_to_native(self): settings = vfxtest.collectSettings(['--target', './python2.x']) vfxtest.prepareTestEnvironment(settings) self.assertEqual(settings['context'], 'python2.x')
def test04_resolveContext_defaults_to_native(self): settings = vfxtest.collectSettings() vfxtest.prepareTestEnvironment(settings) self.assertEqual(settings['context'], 'native')