示例#1
0
    def test_kotlin_recursive(self):
        settings = self.SETTINGS["kotlin"]

        suppress_exceptions = False
        if not SHOW_ERRORS and settings.formatter:
            if not spawn.find_executable(settings.formatter[0]):
                suppress_exceptions = FileNotFoundError

        transpiler_module = ROOT_DIR / "pykt"
        assert_only_reformat_failures(
            *_process_dir(
                settings,
                transpiler_module,
                OUT_DIR,
                False,
                _suppress_exceptions=suppress_exceptions,
            )
        )

        successful, format_errors, failures = _process_dir(
            settings,
            PY2MANY_MODULE,
            OUT_DIR,
            False,
            _suppress_exceptions=suppress_exceptions,
        )
        if suppress_exceptions:
            raise unittest.SkipTest(f"{settings.formatter[0]} not available")

        assert_only_reformat_failures(
            successful,
            format_errors,
            failures,
        )
示例#2
0
    def test_julia_recursive(self):
        settings = self.SETTINGS["julia"]
        suppress_exceptions = (False,)

        if not SHOW_ERRORS:
            if settings.formatter:
                if not spawn.find_executable(settings.formatter[0]):
                    suppress_exceptions = (FileNotFoundError,)

        transpiler_module = ROOT_DIR / "pyjl"
        successful, format_errors, failures = _process_dir(
            settings,
            transpiler_module,
            OUT_DIR,
            False,
            _suppress_exceptions=suppress_exceptions,
        )
        if FileNotFoundError not in suppress_exceptions:
            assert_only_reformat_failures(successful, format_errors, failures)

        successful, format_errors, failures = _process_dir(
            settings,
            PY2MANY_MODULE,
            OUT_DIR,
            False,
            _suppress_exceptions=suppress_exceptions,
        )
        if FileNotFoundError in suppress_exceptions:
            raise unittest.SkipTest(f"{settings.formatter[0]} not available")

        assert_only_reformat_failures(
            successful,
            format_errors,
            failures,
        )
示例#3
0
    def test_dart_recursive(self):
        settings = self.SETTINGS["dart"]

        transpiler_module = ROOT_DIR / "pydart"
        assert_only_reformat_failures(
            *_process_dir(
                settings, transpiler_module, OUT_DIR, False, _suppress_exceptions=False
            ),
        )

        assert_only_reformat_failures(
            *_process_dir(
                settings, PY2MANY_MODULE, OUT_DIR, False, _suppress_exceptions=False
            ),
        )
示例#4
0
    def test_rust_recursive(self):
        settings = self.SETTINGS["rust"]

        transpiler_module = ROOT_DIR / "pyrs"
        assert_only_reformat_failures(*_process_dir(
            settings, transpiler_module, OUT_DIR, _suppress_exceptions=False))

        expected_file = OUT_DIR / "tests" / "test_clike.rs"
        assert expected_file.is_file(), f"{expected_file} missing"

        assert_only_reformat_failures(
            *_process_dir(settings,
                          PY2MANY_MODULE,
                          OUT_DIR,
                          _suppress_exceptions=False), )
示例#5
0
    def test_cpp_recursive(self):
        settings = self.SETTINGS["cpp"]

        transpiler_module = ROOT_DIR / "pycpp"
        successful, format_errors, failures = _process_dir(
            settings,
            transpiler_module,
            OUT_DIR,
            _suppress_exceptions=False,
        )
        assert len(successful) >= 11

        successful, format_errors, failures = _process_dir(
            settings, PY2MANY_MODULE, OUT_DIR, _suppress_exceptions=False)
        assert len(successful) >= 15
示例#6
0
    def test_go_recursive(self):
        settings = self.SETTINGS["go"]
        suppress_exceptions = False if SHOW_ERRORS else AstTypeNotSupported

        transpiler_module = ROOT_DIR / "pygo"
        assert_some_failures(
            *_process_dir(
                settings,
                transpiler_module,
                OUT_DIR,
                False,
                _suppress_exceptions=suppress_exceptions,
            ),
            expected_success=set(["transpiler.py"]),
        )

        assert_some_failures(
            *_process_dir(
                settings,
                PY2MANY_MODULE,
                OUT_DIR,
                False,
                _suppress_exceptions=suppress_exceptions,
            ),
            expected_success={
                "__main__.py",
                "analysis.py",
                "annotation_transformer.py",
                "ast_helpers.py",
                "astx.py",
                "context.py",
                "cli.py",
                "declaration_extractor.py",
                "exceptions.py",
                "language.py",
                "mutability_transformer.py",
                "nesting_transformer.py",
                "python_transformer.py",
                "result.py",
                "rewriters.py",
                "smt.py",
                "scope.py",
                "toposort_modules.py",
                "tracer.py",
            },
        )