diff --git a/codeflash/languages/java/gradle_strategy.py b/codeflash/languages/java/gradle_strategy.py index b4481dd6e..7adb70dfa 100644 --- a/codeflash/languages/java/gradle_strategy.py +++ b/codeflash/languages/java/gradle_strategy.py @@ -45,7 +45,8 @@ 'spotbugsMain', 'spotbugsTest', 'pmdMain', 'pmdTest', 'rat', 'japicmp', - 'jarHell', 'thirdPartyAudit' + 'jarHell', 'thirdPartyAudit', + 'spotlessCheck', 'spotlessApply', 'spotlessJava', 'spotlessKotlin', 'spotlessScala' ] }.configureEach { enabled = false diff --git a/codeflash/languages/java/maven_strategy.py b/codeflash/languages/java/maven_strategy.py index 95dd310c4..e70f57102 100644 --- a/codeflash/languages/java/maven_strategy.py +++ b/codeflash/languages/java/maven_strategy.py @@ -43,6 +43,8 @@ "-Denforcer.skip=true", "-Djapicmp.skip=true", "-Derrorprone.skip=true", + "-Dspotless.check.skip=true", + "-Dspotless.apply.skip=true", "-Dmaven.compiler.failOnWarning=false", "-Dmaven.compiler.showWarnings=false", ] diff --git a/tests/test_languages/test_java/test_build_tools.py b/tests/test_languages/test_java/test_build_tools.py index a4f01e1a6..10bb90fa9 100644 --- a/tests/test_languages/test_java/test_build_tools.py +++ b/tests/test_languages/test_java/test_build_tools.py @@ -641,3 +641,28 @@ def test_adds_dependency_to_nested_module(self, tmp_path): assert result is True nested_build = (nested / "build.gradle.kts").read_text(encoding="utf-8") assert "codeflash-runtime" in nested_build + + +class TestValidationSkipFlags: + """Tests that validation skip flags include all known static analysis and formatting plugins.""" + + def test_maven_skip_flags_include_spotless(self): + from codeflash.languages.java.maven_strategy import _MAVEN_VALIDATION_SKIP_FLAGS + + flags_str = " ".join(_MAVEN_VALIDATION_SKIP_FLAGS) + assert "-Dspotless.check.skip=true" in flags_str + assert "-Dspotless.apply.skip=true" in flags_str + + def test_maven_skip_flags_include_all_known_plugins(self): + from codeflash.languages.java.maven_strategy import _MAVEN_VALIDATION_SKIP_FLAGS + + flags_str = " ".join(_MAVEN_VALIDATION_SKIP_FLAGS) + for plugin in ["rat", "checkstyle", "spotbugs", "pmd", "enforcer", "japicmp", "errorprone", "spotless"]: + assert plugin in flags_str, f"Missing skip flag for {plugin}" + + def test_gradle_skip_script_includes_spotless(self): + from codeflash.languages.java.gradle_strategy import _GRADLE_SKIP_VALIDATION_INIT_SCRIPT + + assert "spotlessCheck" in _GRADLE_SKIP_VALIDATION_INIT_SCRIPT + assert "spotlessApply" in _GRADLE_SKIP_VALIDATION_INIT_SCRIPT + assert "spotlessJava" in _GRADLE_SKIP_VALIDATION_INIT_SCRIPT