From 1d2e8b2aea50ff5ff440fb8600341cf9f77312a8 Mon Sep 17 00:00:00 2001 From: Duarte Meneses Date: Fri, 20 Apr 2018 11:27:25 +0200 Subject: [PATCH] Fix tests --- .../projectanalysis/issue/RuleTypeCopier.java | 1 + .../internal/SensorContextTesterTest.java | 4 ++-- .../externalissue/ExternalIssueImporter.java | 2 +- .../externalissue/ReportParserTest.java | 8 ++++---- .../mediumtest/xoo/sample/externalIssues.json | 6 ++---- .../sonar/scanner/externalissue/report.json | 18 ++++++++++++++---- 6 files changed, 24 insertions(+), 15 deletions(-) diff --git a/server/sonar-server/src/main/java/org/sonar/server/computation/task/projectanalysis/issue/RuleTypeCopier.java b/server/sonar-server/src/main/java/org/sonar/server/computation/task/projectanalysis/issue/RuleTypeCopier.java index 58234a9031a..040c88edf97 100644 --- a/server/sonar-server/src/main/java/org/sonar/server/computation/task/projectanalysis/issue/RuleTypeCopier.java +++ b/server/sonar-server/src/main/java/org/sonar/server/computation/task/projectanalysis/issue/RuleTypeCopier.java @@ -35,6 +35,7 @@ public class RuleTypeCopier extends IssueVisitor { if (issue.type() == null) { Rule rule = ruleRepository.getByKey(issue.ruleKey()); if (!rule.isExternal()) { + // rule type should never be null for rules created by plugins (non-external rules) issue.setType(rule.getType()); } } diff --git a/sonar-plugin-api/src/test/java/org/sonar/api/batch/sensor/internal/SensorContextTesterTest.java b/sonar-plugin-api/src/test/java/org/sonar/api/batch/sensor/internal/SensorContextTesterTest.java index 0cee9bc2a96..c43f0275b34 100644 --- a/sonar-plugin-api/src/test/java/org/sonar/api/batch/sensor/internal/SensorContextTesterTest.java +++ b/sonar-plugin-api/src/test/java/org/sonar/api/batch/sensor/internal/SensorContextTesterTest.java @@ -113,14 +113,14 @@ public class SensorContextTesterTest { assertThat(tester.allExternalIssues()).isEmpty(); NewExternalIssue newExternalIssue = tester.newExternalIssue(); newExternalIssue - .at(newExternalIssue.newLocation().on(new TestInputFileBuilder("foo", "src/Foo.java").build())) + .at(newExternalIssue.newLocation().message("message").on(new TestInputFileBuilder("foo", "src/Foo.java").build())) .forRule(RuleKey.of("repo", "rule")) .type(RuleType.BUG) .severity(Severity.BLOCKER) .save(); newExternalIssue = tester.newExternalIssue(); newExternalIssue - .at(newExternalIssue.newLocation().on(new TestInputFileBuilder("foo", "src/Foo.java").build())) + .at(newExternalIssue.newLocation().message("message").on(new TestInputFileBuilder("foo", "src/Foo.java").build())) .type(RuleType.BUG) .severity(Severity.BLOCKER) .forRule(RuleKey.of("repo", "rule")) diff --git a/sonar-scanner-engine/src/main/java/org/sonar/scanner/externalissue/ExternalIssueImporter.java b/sonar-scanner-engine/src/main/java/org/sonar/scanner/externalissue/ExternalIssueImporter.java index 7f0d15a0420..4a5e35e96f4 100644 --- a/sonar-scanner-engine/src/main/java/org/sonar/scanner/externalissue/ExternalIssueImporter.java +++ b/sonar-scanner-engine/src/main/java/org/sonar/scanner/externalissue/ExternalIssueImporter.java @@ -103,7 +103,7 @@ public class ExternalIssueImporter { } @CheckForNull - private NewIssueLocation fillLocation(SensorContext context, NewIssueLocation newLocation, Location location) { + private static NewIssueLocation fillLocation(SensorContext context, NewIssueLocation newLocation, Location location) { InputFile file = findFile(context, location.filePath); if (file != null) { newLocation diff --git a/sonar-scanner-engine/src/test/java/org/sonar/scanner/externalissue/ReportParserTest.java b/sonar-scanner-engine/src/test/java/org/sonar/scanner/externalissue/ReportParserTest.java index 3795ac37146..e13e64d6b85 100644 --- a/sonar-scanner-engine/src/test/java/org/sonar/scanner/externalissue/ReportParserTest.java +++ b/sonar-scanner-engine/src/test/java/org/sonar/scanner/externalissue/ReportParserTest.java @@ -39,7 +39,7 @@ public class ReportParserTest { System.out.println(Paths.get("org/sonar/scanner/externalissue/report.json").toAbsolutePath()); Report report = parser.parse(); - assertThat(report.issues).hasSize(2); + assertThat(report.issues).hasSize(3); assertThat(report.issues[0].engineId).isEqualTo("eslint"); assertThat(report.issues[0].ruleId).isEqualTo("rule1"); assertThat(report.issues[0].severity).isEqualTo("MAJOR"); @@ -47,10 +47,10 @@ public class ReportParserTest { assertThat(report.issues[0].type).isEqualTo("CODE_SMELL"); assertThat(report.issues[0].primaryLocation.filePath).isEqualTo("file1.js"); assertThat(report.issues[0].primaryLocation.message).isEqualTo("fix the issue here"); - assertThat(report.issues[0].primaryLocation.textRange.startColumn).isNull(); + assertThat(report.issues[0].primaryLocation.textRange.startColumn).isEqualTo(2); assertThat(report.issues[0].primaryLocation.textRange.startLine).isEqualTo(1); - assertThat(report.issues[0].primaryLocation.textRange.endColumn).isNull(); - assertThat(report.issues[0].primaryLocation.textRange.endLine).isEqualTo(2); + assertThat(report.issues[0].primaryLocation.textRange.endColumn).isEqualTo(4); + assertThat(report.issues[0].primaryLocation.textRange.endLine).isEqualTo(3); assertThat(report.issues[0].secondaryLocations).isNull(); } diff --git a/sonar-scanner-engine/src/test/resources/mediumtest/xoo/sample/externalIssues.json b/sonar-scanner-engine/src/test/resources/mediumtest/xoo/sample/externalIssues.json index 4ababc77edb..0e50bedd8dc 100644 --- a/sonar-scanner-engine/src/test/resources/mediumtest/xoo/sample/externalIssues.json +++ b/sonar-scanner-engine/src/test/resources/mediumtest/xoo/sample/externalIssues.json @@ -25,8 +25,7 @@ "message": "fix the bug here", "filePath": "xources/hello/HelloJava.xoo", "textRange": { - "startLine": 3, - "endLine": 3 + "startLine": 3 } } }, @@ -39,8 +38,7 @@ "message": "fix the bug here", "filePath": "invalidFile", "textRange": { - "startLine": 3, - "endLine": 3 + "startLine": 3 } } }, diff --git a/sonar-scanner-engine/src/test/resources/org/sonar/scanner/externalissue/report.json b/sonar-scanner-engine/src/test/resources/org/sonar/scanner/externalissue/report.json index 6eb1024206d..06627d7106b 100644 --- a/sonar-scanner-engine/src/test/resources/org/sonar/scanner/externalissue/report.json +++ b/sonar-scanner-engine/src/test/resources/org/sonar/scanner/externalissue/report.json @@ -11,7 +11,9 @@ "filePath": "file1.js", "textRange": { "startLine": 1, - "endLine": 2 + "startColumn": 2, + "endLine": 3, + "endColumn": 4 } } }, @@ -24,11 +26,19 @@ "message": "fix the bug here", "filePath": "file2.js", "textRange": { - "startLine": 3, - "endLine": 4 + "startLine": 3 } + } + }, + { + "engineId": "eslint", + "ruleId": "rule3", + "severity": "MAJOR", + "type": "BUG", + "primaryLocation": { + "message": "fix the bug here", + "filePath": "file3.js" } } ] } - -- 2.39.5