aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDuarte Meneses <duarte.meneses@sonarsource.com>2018-06-11 17:32:21 +0200
committerSonarTech <sonartech@sonarsource.com>2018-06-12 20:20:57 +0200
commitbc5f256338bf3b46834f1dde1113d31cf79dead8 (patch)
tree50d5eefc7538f6768e86a7f8139f2a7cf1b1e6f5
parent0a34e84cd5ccdbaff1f0b96262ccbe3345adf26f (diff)
downloadsonarqube-bc5f256338bf3b46834f1dde1113d31cf79dead8.tar.gz
sonarqube-bc5f256338bf3b46834f1dde1113d31cf79dead8.zip
SONAR-10587 Don't return external issues in batch/issues
-rw-r--r--server/sonar-db-dao/src/main/resources/org/sonar/db/issue/IssueMapper.xml4
-rw-r--r--server/sonar-server/src/test/java/org/sonar/server/batch/IssuesActionTest.java7
2 files changed, 8 insertions, 3 deletions
diff --git a/server/sonar-db-dao/src/main/resources/org/sonar/db/issue/IssueMapper.xml b/server/sonar-db-dao/src/main/resources/org/sonar/db/issue/IssueMapper.xml
index d541fade3ca..122f92b4944 100644
--- a/server/sonar-db-dao/src/main/resources/org/sonar/db/issue/IssueMapper.xml
+++ b/server/sonar-db-dao/src/main/resources/org/sonar/db/issue/IssueMapper.xml
@@ -206,7 +206,7 @@
inner join projects p on p.uuid=i.component_uuid
inner join projects root on root.uuid=i.project_uuid
where
- r.is_external = ${_false} and
+ (r.is_external is NULL or r.is_external = ${_false}) and
i.component_uuid = #{componentUuid,jdbcType=VARCHAR} and
i.status &lt;&gt; 'CLOSED'
</select>
@@ -259,7 +259,7 @@
inner join projects p on p.uuid = i.component_uuid
inner join projects root on root.uuid = i.project_uuid
where
- r.is_external = ${_false} and
+ (r.is_external is NULL or r.is_external = ${_false}) and
i.project_uuid = #{projectUuid, jdbcType=VARCHAR} and
p.module_uuid_path like #{likeModuleUuidPath, jdbcType=VARCHAR} escape '/' and
i.status &lt;&gt; 'CLOSED'
diff --git a/server/sonar-server/src/test/java/org/sonar/server/batch/IssuesActionTest.java b/server/sonar-server/src/test/java/org/sonar/server/batch/IssuesActionTest.java
index fc85bda10e2..195086c3d3b 100644
--- a/server/sonar-server/src/test/java/org/sonar/server/batch/IssuesActionTest.java
+++ b/server/sonar-server/src/test/java/org/sonar/server/batch/IssuesActionTest.java
@@ -173,6 +173,10 @@ public class IssuesActionTest {
RuleDefinitionDto external = db.rules().insert(ruleDefinitionDto -> ruleDefinitionDto.setIsExternal(true));
IssueDto issueFromExteralruleOnFile = db.issues().insert(external, project, file, i -> i.setKee("ON_FILE_FROM_EXTERNAL"));
+
+ RuleDefinitionDto migrated = db.rules().insert();
+ db.executeUpdateSql("update rules set is_external = NULL where rules.id = ?", migrated.getId());
+ IssueDto issueFromMigratedRule = db.issues().insert(migrated, project, file, i -> i.setKee("MIGRATED"));
addPermissionTo(project);
try (CloseableIterator<ServerIssue> result = callStream(project.getKey(), null)) {
@@ -181,7 +185,8 @@ public class IssuesActionTest {
.containsExactlyInAnyOrder(
tuple(issueOnFile.getKey(), module.getKey()),
tuple(issueOnModule.getKey(), module.getKey()),
- tuple(issueOnProject.getKey(), project.getKey()));
+ tuple(issueOnProject.getKey(), project.getKey()),
+ tuple(issueFromMigratedRule.getKey(), module.getKey()));
}
}