diff options
author | Stephane Gamard <stephane.gamard@searchbox.com> | 2014-06-06 15:42:11 +0200 |
---|---|---|
committer | Stephane Gamard <stephane.gamard@searchbox.com> | 2014-06-06 16:16:06 +0200 |
commit | f8572d0f76f97b9557b70b95843f324c9e09070f (patch) | |
tree | b86100ad8106d669dd7a376f5323629981b47ce8 /sonar-core | |
parent | 704fd9dfbe8233d7453ab87361f520fd3fe35050 (diff) | |
download | sonarqube-f8572d0f76f97b9557b70b95843f324c9e09070f.tar.gz sonarqube-f8572d0f76f97b9557b70b95843f324c9e09070f.zip |
SONAR-5082 - Added Index to active_rules table to H2 and DaoTested
Diffstat (limited to 'sonar-core')
-rw-r--r-- | sonar-core/src/main/resources/org/sonar/core/persistence/schema-h2.ddl | 2 | ||||
-rw-r--r-- | sonar-core/src/test/java/org/sonar/core/qualityprofile/db/ActiveRuleDaoTest.java | 28 |
2 files changed, 30 insertions, 0 deletions
diff --git a/sonar-core/src/main/resources/org/sonar/core/persistence/schema-h2.ddl b/sonar-core/src/main/resources/org/sonar/core/persistence/schema-h2.ddl index bf7ced267bd..af79526c029 100644 --- a/sonar-core/src/main/resources/org/sonar/core/persistence/schema-h2.ddl +++ b/sonar-core/src/main/resources/org/sonar/core/persistence/schema-h2.ddl @@ -695,3 +695,5 @@ CREATE UNIQUE INDEX "RULES_PLUGIN_KEY_AND_NAME" ON "RULES" ("PLUGIN_RULE_KEY", " CREATE INDEX "CHARACTERISTICS_ENABLED" ON "CHARACTERISTICS" ("ENABLED"); CREATE UNIQUE INDEX "QUALITY_GATES_UNIQUE" ON "QUALITY_GATES" ("NAME"); + +CREATE UNIQUE INDEX "ACTIVE_RULES_UNIQUE" ON "ACTIVE_RULES" ("PROFILE_ID","RULE_ID"); diff --git a/sonar-core/src/test/java/org/sonar/core/qualityprofile/db/ActiveRuleDaoTest.java b/sonar-core/src/test/java/org/sonar/core/qualityprofile/db/ActiveRuleDaoTest.java index b95d00bf9da..108525d1b8b 100644 --- a/sonar-core/src/test/java/org/sonar/core/qualityprofile/db/ActiveRuleDaoTest.java +++ b/sonar-core/src/test/java/org/sonar/core/qualityprofile/db/ActiveRuleDaoTest.java @@ -27,6 +27,7 @@ import org.sonar.core.persistence.AbstractDaoTestCase; import java.util.List; +import static junit.framework.Assert.fail; import static org.fest.assertions.Assertions.assertThat; public class ActiveRuleDaoTest extends AbstractDaoTestCase { @@ -82,4 +83,31 @@ public class ActiveRuleDaoTest extends AbstractDaoTestCase { assertThat(dao.selectParamsByProfileId(1)).hasSize(2); } + + @Test + public void fail_unique_rule_index() { + setupData("empty"); + + ActiveRuleDto dto = new ActiveRuleDto() + .setProfileId(1) + .setRuleId(10) + .setSeverity(Severity.MAJOR) + .setInheritance("INHERITED"); + + dao.insert(dto); + + try { + ActiveRuleDto dto2 = new ActiveRuleDto() + .setProfileId(1) + .setRuleId(10) + .setSeverity(Severity.MAJOR) + .setInheritance("INHERITED"); + + dao.insert(dto2); + fail(); + } catch (Exception e) { + + } + + } } |