From a842af849c2967b3d84a162647ba80deb950353f Mon Sep 17 00:00:00 2001 From: Jagdish Prajapati Date: Wed, 9 Apr 2025 16:25:09 +0530 Subject: [PATCH 1/7] first push for leap issue --- .../exercises/leap/AvoidIfStatements.java | 18 ++++++++++++++++++ ...alLogic.java => AvoidRedundantTernary.java} | 6 +++--- .../analyzer/exercises/leap/LeapAnalyzer.java | 6 ++++-- 3 files changed, 25 insertions(+), 5 deletions(-) create mode 100644 src/main/java/analyzer/exercises/leap/AvoidIfStatements.java rename src/main/java/analyzer/exercises/leap/{AvoidConditionalLogic.java => AvoidRedundantTernary.java} (63%) diff --git a/src/main/java/analyzer/exercises/leap/AvoidIfStatements.java b/src/main/java/analyzer/exercises/leap/AvoidIfStatements.java new file mode 100644 index 00000000..0d95b006 --- /dev/null +++ b/src/main/java/analyzer/exercises/leap/AvoidIfStatements.java @@ -0,0 +1,18 @@ +package analyzer.exercises.leap; + +import analyzer.Comment; + +/** + * @see Markdown Template + */ +class AvoidIfStatements extends Comment { + @Override + public String getKey() { + return "java.leap.avoid_if_statements"; + } + + @Override + public Type getType() { + return Type.ACTIONABLE; + } +} diff --git a/src/main/java/analyzer/exercises/leap/AvoidConditionalLogic.java b/src/main/java/analyzer/exercises/leap/AvoidRedundantTernary.java similarity index 63% rename from src/main/java/analyzer/exercises/leap/AvoidConditionalLogic.java rename to src/main/java/analyzer/exercises/leap/AvoidRedundantTernary.java index 161de18f..782a5008 100644 --- a/src/main/java/analyzer/exercises/leap/AvoidConditionalLogic.java +++ b/src/main/java/analyzer/exercises/leap/AvoidRedundantTernary.java @@ -3,12 +3,12 @@ import analyzer.Comment; /** - * @see Markdown Template + * @see Markdown Template */ -class AvoidConditionalLogic extends Comment { +class AvoidRedundantTernary extends Comment { @Override public String getKey() { - return "java.leap.avoid_conditional_logic"; + return "java.leap.avoid_redundant_ternary"; } @Override diff --git a/src/main/java/analyzer/exercises/leap/LeapAnalyzer.java b/src/main/java/analyzer/exercises/leap/LeapAnalyzer.java index c161221f..33beb56e 100644 --- a/src/main/java/analyzer/exercises/leap/LeapAnalyzer.java +++ b/src/main/java/analyzer/exercises/leap/LeapAnalyzer.java @@ -70,13 +70,15 @@ public void visit(IntegerLiteralExpr node, OutputCollector output) { @Override public void visit(IfStmt node, OutputCollector output) { - output.addComment(new AvoidConditionalLogic()); + output.addComment(new AvoidIfStatements()); super.visit(node, output); } @Override public void visit(ConditionalExpr node, OutputCollector output) { - output.addComment(new AvoidConditionalLogic()); + if (node.getThenExpr().isBooleanLiteralExpr() || node.getElseExpr().isBooleanLiteralExpr()) { + output.addComment(new AvoidRedundantTernary()); + } super.visit(node, output); } From 3734858bbe018a08e7251d7de9b210d3f09517f5 Mon Sep 17 00:00:00 2001 From: Jagdish Prajapati Date: Sun, 13 Apr 2025 20:40:57 +0530 Subject: [PATCH 2/7] Adding new scenario and adding trailing newline --- src/test/resources/scenarios/leap/OptimalTernary.java | 5 +++++ .../resources/scenarios/leap/UsingGregorianCalendar.java | 2 +- src/test/resources/scenarios/leap/UsingIfStatements.java | 2 +- src/test/resources/scenarios/leap/UsingTernary.java | 2 +- 4 files changed, 8 insertions(+), 3 deletions(-) create mode 100644 src/test/resources/scenarios/leap/OptimalTernary.java diff --git a/src/test/resources/scenarios/leap/OptimalTernary.java b/src/test/resources/scenarios/leap/OptimalTernary.java new file mode 100644 index 00000000..b44ffda0 --- /dev/null +++ b/src/test/resources/scenarios/leap/OptimalTernary.java @@ -0,0 +1,5 @@ +class Leap { + boolean isLeapYear(int year) { + return (year % 100 == 0) ? (year % 400 == 0) : (year % 4 == 0); + } +} diff --git a/src/test/resources/scenarios/leap/UsingGregorianCalendar.java b/src/test/resources/scenarios/leap/UsingGregorianCalendar.java index 8f5c80b1..b8ade44d 100644 --- a/src/test/resources/scenarios/leap/UsingGregorianCalendar.java +++ b/src/test/resources/scenarios/leap/UsingGregorianCalendar.java @@ -6,4 +6,4 @@ boolean isLeapYear(int year) { var calendar = new GregorianCalendar(Calendar.ALL_STYLES); return calendar.isLeapYear(year); } -} \ No newline at end of file +} diff --git a/src/test/resources/scenarios/leap/UsingIfStatements.java b/src/test/resources/scenarios/leap/UsingIfStatements.java index 939da788..3ca9253a 100644 --- a/src/test/resources/scenarios/leap/UsingIfStatements.java +++ b/src/test/resources/scenarios/leap/UsingIfStatements.java @@ -5,4 +5,4 @@ boolean isLeapYear(int year) { if (year % 4 == 0) return true; return false; } -} \ No newline at end of file +} diff --git a/src/test/resources/scenarios/leap/UsingTernary.java b/src/test/resources/scenarios/leap/UsingTernary.java index c6a484c9..23489c95 100644 --- a/src/test/resources/scenarios/leap/UsingTernary.java +++ b/src/test/resources/scenarios/leap/UsingTernary.java @@ -2,4 +2,4 @@ class Leap { boolean isLeapYear(int year) { return (year % 400 == 0) ? true : (year % 100 == 0) ? false : (year % 4 == 0) ? true : false; } -} \ No newline at end of file +} From 5d8b7a2b90946bf3c401246ddd45daed71513e09 Mon Sep 17 00:00:00 2001 From: Jagdish Prajapati Date: Mon, 14 Apr 2025 01:04:16 +0530 Subject: [PATCH 3/7] ammending AnalyzerIntegrationTest.java and other test files --- src/test/java/analyzer/AnalyzerIntegrationTest.java | 1 + .../AnalyzerIntegrationTest.leap.OptimalTernary.approved.txt | 3 +++ .../AnalyzerIntegrationTest.leap.UsingTernary.approved.txt | 2 +- 3 files changed, 5 insertions(+), 1 deletion(-) create mode 100644 src/test/resources/analyzer/AnalyzerIntegrationTest.leap.OptimalTernary.approved.txt diff --git a/src/test/java/analyzer/AnalyzerIntegrationTest.java b/src/test/java/analyzer/AnalyzerIntegrationTest.java index 26315c72..908d1ba3 100644 --- a/src/test/java/analyzer/AnalyzerIntegrationTest.java +++ b/src/test/java/analyzer/AnalyzerIntegrationTest.java @@ -68,6 +68,7 @@ void lasagna(String scenario) throws IOException { @ValueSource(strings = { "HardCodedTestCases", "OptimalSolution", + "OptimalTernary", "UsingGregorianCalendar", "UsingIfStatements", "UsingJavaTime", diff --git a/src/test/resources/analyzer/AnalyzerIntegrationTest.leap.OptimalTernary.approved.txt b/src/test/resources/analyzer/AnalyzerIntegrationTest.leap.OptimalTernary.approved.txt new file mode 100644 index 00000000..22116aca --- /dev/null +++ b/src/test/resources/analyzer/AnalyzerIntegrationTest.leap.OptimalTernary.approved.txt @@ -0,0 +1,3 @@ +{ + "comments": [] +} \ No newline at end of file diff --git a/src/test/resources/analyzer/AnalyzerIntegrationTest.leap.UsingTernary.approved.txt b/src/test/resources/analyzer/AnalyzerIntegrationTest.leap.UsingTernary.approved.txt index 675b1c3a..b842e53a 100644 --- a/src/test/resources/analyzer/AnalyzerIntegrationTest.leap.UsingTernary.approved.txt +++ b/src/test/resources/analyzer/AnalyzerIntegrationTest.leap.UsingTernary.approved.txt @@ -1,7 +1,7 @@ { "comments": [ { - "comment": "java.leap.avoid_conditional_logic", + "comment": "java.leap.avoid_redundant_ternary", "params": {}, "type": "actionable" }, From 6e9ccf1b76edd64a93e59b3253b2664e64c4dc6b Mon Sep 17 00:00:00 2001 From: Jagdish Prajapati Date: Mon, 14 Apr 2025 09:16:23 +0530 Subject: [PATCH 4/7] Changing approved txt --- .approval_tests_temp/.approved_files.log | 73 +++++++++++++++++++ .approval_tests_temp/.failed_comparison.log | 0 .approval_tests_temp/approve_all.bat | 26 +++++++ .../detect_and_remove_abandoned.bat | 67 +++++++++++++++++ ...onTest.leap.UsingIfStatements.approved.txt | 2 +- 5 files changed, 167 insertions(+), 1 deletion(-) create mode 100644 .approval_tests_temp/.approved_files.log create mode 100644 .approval_tests_temp/.failed_comparison.log create mode 100644 .approval_tests_temp/approve_all.bat create mode 100644 .approval_tests_temp/detect_and_remove_abandoned.bat diff --git a/.approval_tests_temp/.approved_files.log b/.approval_tests_temp/.approved_files.log new file mode 100644 index 00000000..b45a1e1b --- /dev/null +++ b/.approval_tests_temp/.approved_files.log @@ -0,0 +1,73 @@ +C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.salarycalculator.ExemplarSolution.approved.txt +C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.salarycalculator.NoReuseBonusForProductsSold.approved.txt +C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.salarycalculator.NoReuseBonusMultiplier.approved.txt +C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.salarycalculator.NoReuseSalaryMultiplier.approved.txt +C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.salarycalculator.NotReusingMethodsAtAll.approved.txt +C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.salarycalculator.NotUsingTernaryOperatorsAndNotReusingMethods.approved.txt +C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.salarycalculator.NotUsingTernaryOperatorsAtAll.approved.txt +C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.salarycalculator.NotUsingTernaryOperatorsOnBonusMultiplier.approved.txt +C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.salarycalculator.NotUsingTernaryOperatorsOnFinalSalary.approved.txt +C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.salarycalculator.NotUsingTernaryOperatorsOnSalaryMultiplier.approved.txt +C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.loglevels.ExemplarSolution.approved.txt +C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.loglevels.HardCodingLogLevelsUpperCase.approved.txt +C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.loglevels.HardCodingLogLevelsLowerCase.approved.txt +C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.loglevels.NoReuseLogLevel.approved.txt +C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.loglevels.NoReuseMessage.approved.txt +C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.loglevels.NoReuseOfBothMethods.approved.txt +C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.loglevels.NotUsingExpectedMethodsOnLogLevel.approved.txt +C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.loglevels.NotUsingExpectedMethodsOnMessage.approved.txt +C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.loglevels.NotUsingExpectedMethodsOnLogLevelAndMessage.approved.txt +C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.loglevels.UsingStringFormat.approved.txt +C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.wizardsandwarriors.ExemplarSolution.approved.txt +C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.wizardsandwarriors.ExemplarSolutionWithTodoComments.approved.txt +C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.wizardsandwarriors.NotUsingOverrideAnnotations.approved.txt +C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.wizardsandwarriors.UsingAditionalEqualsMethodOverrided.approved.txt +C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.global.AnySolutionWithMainMethod.approved.txt +C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.global.AnySolutionWithPrintStatements.approved.txt +C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.twofer.HardCodedTestCases.approved.txt +C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.twofer.Optimal.approved.txt +C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.twofer.OptimalNoTernary.approved.txt +C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.twofer.UsesMultipleReturns.approved.txt +C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.twofer.UsesStringFormat.approved.txt +C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.annalynsinfiltration.Optimal.approved.txt +C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.annalynsinfiltration.ComparingBooleanWithLiteral.approved.txt +C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.annalynsinfiltration.ReturningBooleanLiteral.approved.txt +C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.annalynsinfiltration.UsingIfStatement.approved.txt +C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.annalynsinfiltration.UsingRedundantParenthesis.approved.txt +C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.lasagna.ExemplarSolution.approved.txt +C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.lasagna.ExemplarSolutionWithTodoComments.approved.txt +C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.lasagna.NoReuseOfBothMethods.approved.txt +C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.lasagna.NoReuseOfExpectedMinutesInOven.approved.txt +C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.lasagna.NoReuseOfPreparationTimeInMinutes.approved.txt +C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.leap.HardCodedTestCases.approved.txt +C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.leap.OptimalSolution.approved.txt +C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.leap.OptimalTernary.approved.txt +C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.leap.UsingGregorianCalendar.approved.txt +C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.leap.UsingIfStatements.approved.txt +C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.leap.UsingJavaTime.approved.txt +C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.leap.UsingTernary.approved.txt +C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.leap.UsingTooManyChecks.approved.txt +C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.hamming.ConstructorTooLong.approved.txt +C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.hamming.MethodTooLong.approved.txt +C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.hamming.MustUseCharAtOrCodePointAt.approved.txt +C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.hamming.NestedCalculation.approved.txt +C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.hamming.NestedValidation.approved.txt +C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.hamming.OptimalWithCalculationDelegatedFromConstructor.approved.txt +C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.hamming.OptimalWithCalculationDelegatedFromGetHammingDistance.approved.txt +C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.hamming.OptimalWithCalculationInGetHammingDistance.approved.txt +C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.hamming.OptimalWithValidationMethod.approved.txt +C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.hamming.UsesCharacterLiterals.approved.txt +C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.hamming.UsesStreamReduce.approved.txt +C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.needforspeed.ExemplarSolution.approved.txt +C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.needforspeed.UsingForLoop.approved.txt +C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.needforspeed.UsingIfStatement.approved.txt +C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.needforspeed.UsingTernary.approved.txt +C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.needforspeed.UsingWhileLoop.approved.txt +C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.secrets.ExemplarSolution.approved.txt +C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.secrets.NotUsingBitwiseAnd.approved.txt +C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.secrets.NotUsingBitwiseNot.approved.txt +C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.secrets.NotUsingBitwiseOr.approved.txt +C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.secrets.NotUsingBitwiseXor.approved.txt +C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.secrets.NotUsingUnsignedRightShift.approved.txt +C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.secrets.UsingIfStatement.approved.txt +C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.secrets.NotUsingAnyOfTheExpectedOperators.approved.txt diff --git a/.approval_tests_temp/.failed_comparison.log b/.approval_tests_temp/.failed_comparison.log new file mode 100644 index 00000000..e69de29b diff --git a/.approval_tests_temp/approve_all.bat b/.approval_tests_temp/approve_all.bat new file mode 100644 index 00000000..fc27c152 --- /dev/null +++ b/.approval_tests_temp/approve_all.bat @@ -0,0 +1,26 @@ +@echo off + +FOR /F "usebackq delims=" %%L IN ("..\.approval_tests_temp\.failed_comparison.log") DO ( + REM Store the entire line in an environment variable named LINE + SET "LINE=%%L" + REM Call a subroutine to parse and handle the line + CALL :ProcessLine +) + +GOTO :EOF + +:ProcessLine + REM Enable delayed expansion so we can safely manipulate LINE + SETLOCAL ENABLEDELAYEDEXPANSION + + REM Replace " -> " with a pipe character so we can split easily + SET "LINE=!LINE: -> =|!" + + REM Now split the line on the pipe and capture each side + FOR /F "tokens=1,2 delims=|" %%A IN ("!LINE!") DO ( + ECHO Moving "%%~A" to "%%~B" + MOVE "%%~A" "%%~B" + ) + + ENDLOCAL +GOTO :EOF diff --git a/.approval_tests_temp/detect_and_remove_abandoned.bat b/.approval_tests_temp/detect_and_remove_abandoned.bat new file mode 100644 index 00000000..126a8eca --- /dev/null +++ b/.approval_tests_temp/detect_and_remove_abandoned.bat @@ -0,0 +1,67 @@ +@echo off +setlocal enabledelayedexpansion + +REM Define paths +set "SCRIPT_DIR=%~dp0" +set "LOG_FILE=%SCRIPT_DIR%.approved_files.log" +set "BASE_DIR=%SCRIPT_DIR%.." + +REM Check if the log file exists +if not exist "%LOG_FILE%" ( + echo Error: Log file .approved_files.log not found in script directory. + exit /b 1 +) + +REM Find all *.approved.* files recursively from the base directory +echo Scanning for approval files in base directory: %BASE_DIR%... +for /r "%BASE_DIR%" %%f in (*.approved.*) do ( + call :ResolvePath "%%f" resolved_path + set "ALL_APPROVAL_FILES=!ALL_APPROVAL_FILES!%%f;" +) + +REM Resolve paths in .approved_files.log +echo Resolving paths from .approved_files.log... +set "RESOLVED_USED_FILES=" +for /f "usebackq delims=" %%l in ("%LOG_FILE%") do ( + call :ResolvePath "%%l" resolved_path + set "RESOLVED_USED_FILES=!RESOLVED_USED_FILES!!resolved_path!;" +) + +REM Compare files and identify abandoned ones +echo Identifying abandoned approval files... +set "ABANDONED_FILES=" +for %%f in (!ALL_APPROVAL_FILES:;= !) do ( + call :ResolvePath "%%f" resolved_path + if "!RESOLVED_USED_FILES:;=!" neq "!RESOLVED_USED_FILES:;=%%resolved_path%%;!" ( + set "ABANDONED_FILES=!ABANDONED_FILES!!resolved_path!;" + ) +) + +REM Display abandoned files +if "!ABANDONED_FILES!"=="" ( + echo No abandoned approval files found. + exit /b 0 +) + +echo The following approval files are abandoned: +for %%f in (!ABANDONED_FILES:;= !) do ( + echo %%f +) + +REM Prompt for deletion +set /p "RESPONSE=Would you like to delete these files? (y/n): " +if /i "!RESPONSE!"=="y" ( + for %%f in (!ABANDONED_FILES:;= !) do ( + del /q "%%f" && echo Deleted: %%f + ) + echo All abandoned files deleted. +) else ( + echo No files were deleted. +) + +exit /b 0 + +REM Function to resolve paths +:ResolvePath +for %%i in (%1) do set "%2=%%~fi" +exit /b diff --git a/src/test/resources/analyzer/AnalyzerIntegrationTest.leap.UsingIfStatements.approved.txt b/src/test/resources/analyzer/AnalyzerIntegrationTest.leap.UsingIfStatements.approved.txt index 675b1c3a..f649bc25 100644 --- a/src/test/resources/analyzer/AnalyzerIntegrationTest.leap.UsingIfStatements.approved.txt +++ b/src/test/resources/analyzer/AnalyzerIntegrationTest.leap.UsingIfStatements.approved.txt @@ -1,7 +1,7 @@ { "comments": [ { - "comment": "java.leap.avoid_conditional_logic", + "comment": "java.leap.avoid_if_statements", "params": {}, "type": "actionable" }, From 2287c87134af2ec75d55779c3836016348fb9e34 Mon Sep 17 00:00:00 2001 From: Jagdish Prajapati Date: Sat, 19 Apr 2025 18:15:30 +0530 Subject: [PATCH 5/7] Removing temporary files --- .approval_tests_temp/.approved_files.log | 73 ------------------- .approval_tests_temp/.failed_comparison.log | 0 .approval_tests_temp/approve_all.bat | 26 ------- .../detect_and_remove_abandoned.bat | 67 ----------------- 4 files changed, 166 deletions(-) delete mode 100644 .approval_tests_temp/.approved_files.log delete mode 100644 .approval_tests_temp/.failed_comparison.log delete mode 100644 .approval_tests_temp/approve_all.bat delete mode 100644 .approval_tests_temp/detect_and_remove_abandoned.bat diff --git a/.approval_tests_temp/.approved_files.log b/.approval_tests_temp/.approved_files.log deleted file mode 100644 index b45a1e1b..00000000 --- a/.approval_tests_temp/.approved_files.log +++ /dev/null @@ -1,73 +0,0 @@ -C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.salarycalculator.ExemplarSolution.approved.txt -C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.salarycalculator.NoReuseBonusForProductsSold.approved.txt -C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.salarycalculator.NoReuseBonusMultiplier.approved.txt -C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.salarycalculator.NoReuseSalaryMultiplier.approved.txt -C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.salarycalculator.NotReusingMethodsAtAll.approved.txt -C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.salarycalculator.NotUsingTernaryOperatorsAndNotReusingMethods.approved.txt -C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.salarycalculator.NotUsingTernaryOperatorsAtAll.approved.txt -C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.salarycalculator.NotUsingTernaryOperatorsOnBonusMultiplier.approved.txt -C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.salarycalculator.NotUsingTernaryOperatorsOnFinalSalary.approved.txt -C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.salarycalculator.NotUsingTernaryOperatorsOnSalaryMultiplier.approved.txt -C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.loglevels.ExemplarSolution.approved.txt -C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.loglevels.HardCodingLogLevelsUpperCase.approved.txt -C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.loglevels.HardCodingLogLevelsLowerCase.approved.txt -C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.loglevels.NoReuseLogLevel.approved.txt -C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.loglevels.NoReuseMessage.approved.txt -C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.loglevels.NoReuseOfBothMethods.approved.txt -C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.loglevels.NotUsingExpectedMethodsOnLogLevel.approved.txt -C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.loglevels.NotUsingExpectedMethodsOnMessage.approved.txt -C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.loglevels.NotUsingExpectedMethodsOnLogLevelAndMessage.approved.txt -C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.loglevels.UsingStringFormat.approved.txt -C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.wizardsandwarriors.ExemplarSolution.approved.txt -C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.wizardsandwarriors.ExemplarSolutionWithTodoComments.approved.txt -C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.wizardsandwarriors.NotUsingOverrideAnnotations.approved.txt -C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.wizardsandwarriors.UsingAditionalEqualsMethodOverrided.approved.txt -C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.global.AnySolutionWithMainMethod.approved.txt -C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.global.AnySolutionWithPrintStatements.approved.txt -C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.twofer.HardCodedTestCases.approved.txt -C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.twofer.Optimal.approved.txt -C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.twofer.OptimalNoTernary.approved.txt -C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.twofer.UsesMultipleReturns.approved.txt -C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.twofer.UsesStringFormat.approved.txt -C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.annalynsinfiltration.Optimal.approved.txt -C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.annalynsinfiltration.ComparingBooleanWithLiteral.approved.txt -C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.annalynsinfiltration.ReturningBooleanLiteral.approved.txt -C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.annalynsinfiltration.UsingIfStatement.approved.txt -C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.annalynsinfiltration.UsingRedundantParenthesis.approved.txt -C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.lasagna.ExemplarSolution.approved.txt -C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.lasagna.ExemplarSolutionWithTodoComments.approved.txt -C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.lasagna.NoReuseOfBothMethods.approved.txt -C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.lasagna.NoReuseOfExpectedMinutesInOven.approved.txt -C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.lasagna.NoReuseOfPreparationTimeInMinutes.approved.txt -C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.leap.HardCodedTestCases.approved.txt -C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.leap.OptimalSolution.approved.txt -C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.leap.OptimalTernary.approved.txt -C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.leap.UsingGregorianCalendar.approved.txt -C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.leap.UsingIfStatements.approved.txt -C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.leap.UsingJavaTime.approved.txt -C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.leap.UsingTernary.approved.txt -C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.leap.UsingTooManyChecks.approved.txt -C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.hamming.ConstructorTooLong.approved.txt -C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.hamming.MethodTooLong.approved.txt -C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.hamming.MustUseCharAtOrCodePointAt.approved.txt -C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.hamming.NestedCalculation.approved.txt -C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.hamming.NestedValidation.approved.txt -C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.hamming.OptimalWithCalculationDelegatedFromConstructor.approved.txt -C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.hamming.OptimalWithCalculationDelegatedFromGetHammingDistance.approved.txt -C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.hamming.OptimalWithCalculationInGetHammingDistance.approved.txt -C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.hamming.OptimalWithValidationMethod.approved.txt -C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.hamming.UsesCharacterLiterals.approved.txt -C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.hamming.UsesStreamReduce.approved.txt -C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.needforspeed.ExemplarSolution.approved.txt -C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.needforspeed.UsingForLoop.approved.txt -C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.needforspeed.UsingIfStatement.approved.txt -C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.needforspeed.UsingTernary.approved.txt -C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.needforspeed.UsingWhileLoop.approved.txt -C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.secrets.ExemplarSolution.approved.txt -C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.secrets.NotUsingBitwiseAnd.approved.txt -C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.secrets.NotUsingBitwiseNot.approved.txt -C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.secrets.NotUsingBitwiseOr.approved.txt -C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.secrets.NotUsingBitwiseXor.approved.txt -C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.secrets.NotUsingUnsignedRightShift.approved.txt -C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.secrets.UsingIfStatement.approved.txt -C:\Programming\Exercism\java-analyzer\src\test\resources\analyzer\AnalyzerIntegrationTest.secrets.NotUsingAnyOfTheExpectedOperators.approved.txt diff --git a/.approval_tests_temp/.failed_comparison.log b/.approval_tests_temp/.failed_comparison.log deleted file mode 100644 index e69de29b..00000000 diff --git a/.approval_tests_temp/approve_all.bat b/.approval_tests_temp/approve_all.bat deleted file mode 100644 index fc27c152..00000000 --- a/.approval_tests_temp/approve_all.bat +++ /dev/null @@ -1,26 +0,0 @@ -@echo off - -FOR /F "usebackq delims=" %%L IN ("..\.approval_tests_temp\.failed_comparison.log") DO ( - REM Store the entire line in an environment variable named LINE - SET "LINE=%%L" - REM Call a subroutine to parse and handle the line - CALL :ProcessLine -) - -GOTO :EOF - -:ProcessLine - REM Enable delayed expansion so we can safely manipulate LINE - SETLOCAL ENABLEDELAYEDEXPANSION - - REM Replace " -> " with a pipe character so we can split easily - SET "LINE=!LINE: -> =|!" - - REM Now split the line on the pipe and capture each side - FOR /F "tokens=1,2 delims=|" %%A IN ("!LINE!") DO ( - ECHO Moving "%%~A" to "%%~B" - MOVE "%%~A" "%%~B" - ) - - ENDLOCAL -GOTO :EOF diff --git a/.approval_tests_temp/detect_and_remove_abandoned.bat b/.approval_tests_temp/detect_and_remove_abandoned.bat deleted file mode 100644 index 126a8eca..00000000 --- a/.approval_tests_temp/detect_and_remove_abandoned.bat +++ /dev/null @@ -1,67 +0,0 @@ -@echo off -setlocal enabledelayedexpansion - -REM Define paths -set "SCRIPT_DIR=%~dp0" -set "LOG_FILE=%SCRIPT_DIR%.approved_files.log" -set "BASE_DIR=%SCRIPT_DIR%.." - -REM Check if the log file exists -if not exist "%LOG_FILE%" ( - echo Error: Log file .approved_files.log not found in script directory. - exit /b 1 -) - -REM Find all *.approved.* files recursively from the base directory -echo Scanning for approval files in base directory: %BASE_DIR%... -for /r "%BASE_DIR%" %%f in (*.approved.*) do ( - call :ResolvePath "%%f" resolved_path - set "ALL_APPROVAL_FILES=!ALL_APPROVAL_FILES!%%f;" -) - -REM Resolve paths in .approved_files.log -echo Resolving paths from .approved_files.log... -set "RESOLVED_USED_FILES=" -for /f "usebackq delims=" %%l in ("%LOG_FILE%") do ( - call :ResolvePath "%%l" resolved_path - set "RESOLVED_USED_FILES=!RESOLVED_USED_FILES!!resolved_path!;" -) - -REM Compare files and identify abandoned ones -echo Identifying abandoned approval files... -set "ABANDONED_FILES=" -for %%f in (!ALL_APPROVAL_FILES:;= !) do ( - call :ResolvePath "%%f" resolved_path - if "!RESOLVED_USED_FILES:;=!" neq "!RESOLVED_USED_FILES:;=%%resolved_path%%;!" ( - set "ABANDONED_FILES=!ABANDONED_FILES!!resolved_path!;" - ) -) - -REM Display abandoned files -if "!ABANDONED_FILES!"=="" ( - echo No abandoned approval files found. - exit /b 0 -) - -echo The following approval files are abandoned: -for %%f in (!ABANDONED_FILES:;= !) do ( - echo %%f -) - -REM Prompt for deletion -set /p "RESPONSE=Would you like to delete these files? (y/n): " -if /i "!RESPONSE!"=="y" ( - for %%f in (!ABANDONED_FILES:;= !) do ( - del /q "%%f" && echo Deleted: %%f - ) - echo All abandoned files deleted. -) else ( - echo No files were deleted. -) - -exit /b 0 - -REM Function to resolve paths -:ResolvePath -for %%i in (%1) do set "%2=%%~fi" -exit /b From 49717beb7d8bcf845dcb79c52e5f40997c881fa1 Mon Sep 17 00:00:00 2001 From: Jagdish Prajapati Date: Sat, 19 Apr 2025 18:30:58 +0530 Subject: [PATCH 6/7] Adding trailing newlines --- src/test/resources/scenarios/leap/UsingGregorianCalendar.java | 2 +- src/test/resources/scenarios/leap/UsingIfStatements.java | 2 +- src/test/resources/scenarios/leap/UsingTernary.java | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/test/resources/scenarios/leap/UsingGregorianCalendar.java b/src/test/resources/scenarios/leap/UsingGregorianCalendar.java index b8ade44d..8f5c80b1 100644 --- a/src/test/resources/scenarios/leap/UsingGregorianCalendar.java +++ b/src/test/resources/scenarios/leap/UsingGregorianCalendar.java @@ -6,4 +6,4 @@ boolean isLeapYear(int year) { var calendar = new GregorianCalendar(Calendar.ALL_STYLES); return calendar.isLeapYear(year); } -} +} \ No newline at end of file diff --git a/src/test/resources/scenarios/leap/UsingIfStatements.java b/src/test/resources/scenarios/leap/UsingIfStatements.java index 3ca9253a..939da788 100644 --- a/src/test/resources/scenarios/leap/UsingIfStatements.java +++ b/src/test/resources/scenarios/leap/UsingIfStatements.java @@ -5,4 +5,4 @@ boolean isLeapYear(int year) { if (year % 4 == 0) return true; return false; } -} +} \ No newline at end of file diff --git a/src/test/resources/scenarios/leap/UsingTernary.java b/src/test/resources/scenarios/leap/UsingTernary.java index 23489c95..c6a484c9 100644 --- a/src/test/resources/scenarios/leap/UsingTernary.java +++ b/src/test/resources/scenarios/leap/UsingTernary.java @@ -2,4 +2,4 @@ class Leap { boolean isLeapYear(int year) { return (year % 400 == 0) ? true : (year % 100 == 0) ? false : (year % 4 == 0) ? true : false; } -} +} \ No newline at end of file From 3da13cd3285aec39f2d919b08806138c94ab4ff4 Mon Sep 17 00:00:00 2001 From: Jagdish Prajapati Date: Sat, 26 Apr 2025 11:51:57 +0530 Subject: [PATCH 7/7] Logic ammendements for ternary scenario --- ...AvoidRedundantTernary.java => AvoidMultipleTernary.java} | 6 +++--- src/main/java/analyzer/exercises/leap/LeapAnalyzer.java | 4 ++-- src/test/java/analyzer/AnalyzerIntegrationTest.java | 2 +- ...rIntegrationTest.leap.UsingMultipleTernary.approved.txt} | 2 +- .../leap/{UsingTernary.java => UsingMultipleTernary.java} | 0 5 files changed, 7 insertions(+), 7 deletions(-) rename src/main/java/analyzer/exercises/leap/{AvoidRedundantTernary.java => AvoidMultipleTernary.java} (59%) rename src/test/resources/analyzer/{AnalyzerIntegrationTest.leap.UsingTernary.approved.txt => AnalyzerIntegrationTest.leap.UsingMultipleTernary.approved.txt} (78%) rename src/test/resources/scenarios/leap/{UsingTernary.java => UsingMultipleTernary.java} (100%) diff --git a/src/main/java/analyzer/exercises/leap/AvoidRedundantTernary.java b/src/main/java/analyzer/exercises/leap/AvoidMultipleTernary.java similarity index 59% rename from src/main/java/analyzer/exercises/leap/AvoidRedundantTernary.java rename to src/main/java/analyzer/exercises/leap/AvoidMultipleTernary.java index 782a5008..6fe649ec 100644 --- a/src/main/java/analyzer/exercises/leap/AvoidRedundantTernary.java +++ b/src/main/java/analyzer/exercises/leap/AvoidMultipleTernary.java @@ -3,12 +3,12 @@ import analyzer.Comment; /** - * @see Markdown Template + * @see Markdown Template */ -class AvoidRedundantTernary extends Comment { +class AvoidMultipleTernary extends Comment { @Override public String getKey() { - return "java.leap.avoid_redundant_ternary"; + return "java.leap.avoid_multiple_ternary"; } @Override diff --git a/src/main/java/analyzer/exercises/leap/LeapAnalyzer.java b/src/main/java/analyzer/exercises/leap/LeapAnalyzer.java index 33beb56e..be8d86b0 100644 --- a/src/main/java/analyzer/exercises/leap/LeapAnalyzer.java +++ b/src/main/java/analyzer/exercises/leap/LeapAnalyzer.java @@ -76,8 +76,8 @@ public void visit(IfStmt node, OutputCollector output) { @Override public void visit(ConditionalExpr node, OutputCollector output) { - if (node.getThenExpr().isBooleanLiteralExpr() || node.getElseExpr().isBooleanLiteralExpr()) { - output.addComment(new AvoidRedundantTernary()); + if (node.getThenExpr().isConditionalExpr() || node.getElseExpr().isConditionalExpr()) { + output.addComment(new AvoidMultipleTernary()); } super.visit(node, output); } diff --git a/src/test/java/analyzer/AnalyzerIntegrationTest.java b/src/test/java/analyzer/AnalyzerIntegrationTest.java index 908d1ba3..4b8cccde 100644 --- a/src/test/java/analyzer/AnalyzerIntegrationTest.java +++ b/src/test/java/analyzer/AnalyzerIntegrationTest.java @@ -72,7 +72,7 @@ void lasagna(String scenario) throws IOException { "UsingGregorianCalendar", "UsingIfStatements", "UsingJavaTime", - "UsingTernary", + "UsingMultipleTernary", "UsingTooManyChecks", }) void leap(String scenario) throws IOException { diff --git a/src/test/resources/analyzer/AnalyzerIntegrationTest.leap.UsingTernary.approved.txt b/src/test/resources/analyzer/AnalyzerIntegrationTest.leap.UsingMultipleTernary.approved.txt similarity index 78% rename from src/test/resources/analyzer/AnalyzerIntegrationTest.leap.UsingTernary.approved.txt rename to src/test/resources/analyzer/AnalyzerIntegrationTest.leap.UsingMultipleTernary.approved.txt index b842e53a..293be9f1 100644 --- a/src/test/resources/analyzer/AnalyzerIntegrationTest.leap.UsingTernary.approved.txt +++ b/src/test/resources/analyzer/AnalyzerIntegrationTest.leap.UsingMultipleTernary.approved.txt @@ -1,7 +1,7 @@ { "comments": [ { - "comment": "java.leap.avoid_redundant_ternary", + "comment": "java.leap.avoid_multiple_ternary", "params": {}, "type": "actionable" }, diff --git a/src/test/resources/scenarios/leap/UsingTernary.java b/src/test/resources/scenarios/leap/UsingMultipleTernary.java similarity index 100% rename from src/test/resources/scenarios/leap/UsingTernary.java rename to src/test/resources/scenarios/leap/UsingMultipleTernary.java