aboutsummaryrefslogtreecommitdiffstats
path: root/sonar-scanner-engine
diff options
context:
space:
mode:
authorLukasz Jarocki <lukasz.jarocki@sonarsource.com>2022-09-12 15:55:30 +0200
committersonartech <sonartech@sonarsource.com>2022-09-16 20:03:14 +0000
commit3fdcf61545c23a2ae219fd8c8f44b44085f19aef (patch)
treeb60d0bd088a5222f549811b66bfd85d09f348239 /sonar-scanner-engine
parent16b2a8daecf6ec8473109048b723c1042a50be7d (diff)
downloadsonarqube-3fdcf61545c23a2ae219fd8c8f44b44085f19aef.tar.gz
sonarqube-3fdcf61545c23a2ae219fd8c8f44b44085f19aef.zip
SONAR-17288 add medium tests
Diffstat (limited to 'sonar-scanner-engine')
-rw-r--r--sonar-scanner-engine/src/test/java/org/sonar/scanner/mediumtest/issues/MultilineIssuesMediumTest.java19
-rw-r--r--sonar-scanner-engine/test-resources/mediumtest/xoo/sample-multiline/xources/hello/FlowTypes.xoo11
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};
+ }
+}