diff options
author | Lukasz Jarocki <lukasz.jarocki@sonarsource.com> | 2022-09-12 15:55:30 +0200 |
---|---|---|
committer | sonartech <sonartech@sonarsource.com> | 2022-09-16 20:03:14 +0000 |
commit | 3fdcf61545c23a2ae219fd8c8f44b44085f19aef (patch) | |
tree | b60d0bd088a5222f549811b66bfd85d09f348239 /sonar-scanner-engine | |
parent | 16b2a8daecf6ec8473109048b723c1042a50be7d (diff) | |
download | sonarqube-3fdcf61545c23a2ae219fd8c8f44b44085f19aef.tar.gz sonarqube-3fdcf61545c23a2ae219fd8c8f44b44085f19aef.zip |
SONAR-17288 add medium tests
Diffstat (limited to 'sonar-scanner-engine')
2 files changed, 29 insertions, 1 deletions
diff --git a/sonar-scanner-engine/src/test/java/org/sonar/scanner/mediumtest/issues/MultilineIssuesMediumTest.java b/sonar-scanner-engine/src/test/java/org/sonar/scanner/mediumtest/issues/MultilineIssuesMediumTest.java index 929e5d11ad6..3066e4a0b39 100644 --- a/sonar-scanner-engine/src/test/java/org/sonar/scanner/mediumtest/issues/MultilineIssuesMediumTest.java +++ b/sonar-scanner-engine/src/test/java/org/sonar/scanner/mediumtest/issues/MultilineIssuesMediumTest.java @@ -26,15 +26,18 @@ import org.junit.Before; import org.junit.Rule; import org.junit.Test; import org.junit.rules.TemporaryFolder; -import org.sonar.scanner.mediumtest.ScannerMediumTester; import org.sonar.scanner.mediumtest.AnalysisResult; +import org.sonar.scanner.mediumtest.ScannerMediumTester; +import org.sonar.scanner.protocol.output.ScannerReport; import org.sonar.scanner.protocol.output.ScannerReport.Flow; +import org.sonar.scanner.protocol.output.ScannerReport.FlowType; import org.sonar.scanner.protocol.output.ScannerReport.Issue; import org.sonar.scanner.protocol.output.ScannerReport.IssueLocation; import org.sonar.xoo.XooPlugin; import org.sonar.xoo.rule.XooRulesDefinition; import static org.assertj.core.api.Assertions.assertThat; +import static org.assertj.core.api.Assertions.tuple; public class MultilineIssuesMediumTest { @@ -118,4 +121,18 @@ public class MultilineIssuesMediumTest { assertThat(flow.getLocationList()).hasSize(2); // TODO more assertions } + + @Test + public void testFlowsWithTypes() { + List<Issue> issues = result.issuesFor(result.inputFile("xources/hello/FlowTypes.xoo")); + assertThat(issues).hasSize(1); + Issue issue = issues.get(0); + assertThat(issue.getFlowList()).hasSize(3); + + assertThat(issue.getFlowList()).extracting(Flow::getType, Flow::getDescription, f -> f.getLocationList().size()) + .containsExactly( + tuple(FlowType.DATA, "flow #1", 1), + tuple(FlowType.UNDEFINED, "", 1), + tuple(FlowType.EXECUTION, "flow #3", 1)); + } } diff --git a/sonar-scanner-engine/test-resources/mediumtest/xoo/sample-multiline/xources/hello/FlowTypes.xoo b/sonar-scanner-engine/test-resources/mediumtest/xoo/sample-multiline/xources/hello/FlowTypes.xoo new file mode 100644 index 00000000000..7436df4b820 --- /dev/null +++ b/sonar-scanner-engine/test-resources/mediumtest/xoo/sample-multiline/xources/hello/FlowTypes.xoo @@ -0,0 +1,11 @@ +package hello; + +public class HelloJava { + + public static void main(String[] args) { + {xoo-start-issue:1}System.out.println("Hello"){xoo-end-issue:1}; + {xoo-start-data-flow:1:1:1}System.out.println("World"){xoo-end-data-flow:1:1:1}; + {xoo-start-flow:1:2:1}System.out.println("World"){xoo-end-flow:1:2:1}; + {xoo-start-execution-flow:1:3:1}System.out.println("World"){xoo-end-execution-flow:1:3:1}; + } +} |