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)
Example #2
0
    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)
Example #3
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)
Example #4
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)
Example #5
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)
Example #6
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')
Example #8
0
    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')
Example #10
0
    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'])))
Example #11
0
    def test05_resolveContext_defaults_to_native(self):

        settings = vfxtest.collectSettings(['--target', './python2.x'])
        vfxtest.prepareTestEnvironment(settings)

        self.assertEqual(settings['context'], 'python2.x')
Example #12
0
    def test04_resolveContext_defaults_to_native(self):

        settings = vfxtest.collectSettings()
        vfxtest.prepareTestEnvironment(settings)

        self.assertEqual(settings['context'], 'native')