diff options
author | Stephane Gamard <stephane.gamard@sonarsource.com> | 2014-08-31 15:22:27 +0200 |
---|---|---|
committer | Stephane Gamard <stephane.gamard@sonarsource.com> | 2014-08-31 15:22:27 +0200 |
commit | 98af5dee56f634261390f4aacce48fc5020e41aa (patch) | |
tree | de5e12a07f9384f78a9b9f72f7610d498987f83f /server | |
parent | 7b5eac0452d50159f0c4e38e88ad977acb8fc4ae (diff) | |
download | sonarqube-98af5dee56f634261390f4aacce48fc5020e41aa.tar.gz sonarqube-98af5dee56f634261390f4aacce48fc5020e41aa.zip |
SONAR-5529 - Implemented findAfterDate in IssueDao V.2
Diffstat (limited to 'server')
-rw-r--r-- | server/sonar-server/src/main/java/org/sonar/server/search/IndexSynchronizer.java | 1 | ||||
-rw-r--r-- | server/sonar-server/src/test/java/org/sonar/server/issue/db/IssueBackendMediumTest.java | 54 |
2 files changed, 43 insertions, 12 deletions
diff --git a/server/sonar-server/src/main/java/org/sonar/server/search/IndexSynchronizer.java b/server/sonar-server/src/main/java/org/sonar/server/search/IndexSynchronizer.java index d4249a020dd..b14059e4a03 100644 --- a/server/sonar-server/src/main/java/org/sonar/server/search/IndexSynchronizer.java +++ b/server/sonar-server/src/main/java/org/sonar/server/search/IndexSynchronizer.java @@ -49,6 +49,7 @@ public class IndexSynchronizer { LOG.info("Starting DB to Index synchronization"); long start = System.currentTimeMillis(); synchronize(session, db.ruleDao(), index.get(RuleIndex.class)); + synchronize(session, db.issueDao(), index.get(ActivityIndex.class)); synchronize(session, db.activeRuleDao(), index.get(ActiveRuleIndex.class)); synchronize(session, db.activityDao(), index.get(ActivityIndex.class)); session.commit(); diff --git a/server/sonar-server/src/test/java/org/sonar/server/issue/db/IssueBackendMediumTest.java b/server/sonar-server/src/test/java/org/sonar/server/issue/db/IssueBackendMediumTest.java index 8443f958525..4416feab29d 100644 --- a/server/sonar-server/src/test/java/org/sonar/server/issue/db/IssueBackendMediumTest.java +++ b/server/sonar-server/src/test/java/org/sonar/server/issue/db/IssueBackendMediumTest.java @@ -22,19 +22,25 @@ package org.sonar.server.issue.db; import org.junit.After; import org.junit.Before; import org.junit.ClassRule; -import org.junit.Ignore; import org.junit.Test; -import org.sonar.api.resources.Project; +import org.sonar.core.component.ComponentDto; +import org.sonar.core.issue.db.IssueDto; import org.sonar.core.persistence.DbSession; import org.sonar.core.rule.RuleDto; +import org.sonar.server.component.persistence.ComponentDao; import org.sonar.server.db.DbClient; import org.sonar.server.platform.Platform; import org.sonar.server.rule.RuleTesting; +import org.sonar.server.rule.db.RuleDao; import org.sonar.server.search.IndexClient; import org.sonar.server.tester.ServerTester; -public class IssueBackendMediumTest { +import java.util.Date; +import java.util.UUID; + +import static org.fest.assertions.Assertions.assertThat; +public class IssueBackendMediumTest { @ClassRule public static ServerTester tester = new ServerTester(); @@ -61,14 +67,38 @@ public class IssueBackendMediumTest { } @Test - @Ignore("work in progress") - public void insert_select_issue() throws Exception { - Project project = new Project("my:project"); + public void insert_and_find_after_date() throws Exception { + RuleDto rule = RuleTesting.newXooX1(); -// //IssueDto issue = IssueDto.createFor(project, rule); -// System.out.println("issue.getKey() = " + issue.getKey()); -// dbClient.issueDao().insert(dbSession, issue); -// -// assertThat(issue.getId()).isNotNull(); + tester.get(RuleDao.class).insert(dbSession, rule); + + ComponentDto project = new ComponentDto() + .setId(1L) + .setProjectId(1L); + tester.get(ComponentDao.class).insert(dbSession, project); + + ComponentDto resource = new ComponentDto() + .setProjectId(1L) + .setId(2L); + tester.get(ComponentDao.class).insert(dbSession, resource); + + IssueDto issue = new IssueDto().setId(1L).setRuleId(50).setComponentId(123l).setRootComponentId(100l) + .setRuleId(rule.getId()) + .setRootComponentId(project.getId()) + .setComponentId(resource.getId()) + .setStatus("OPEN").setResolution("OPEN") + .setKee(UUID.randomUUID().toString()); + dbClient.issueDao().insert(dbSession, issue); + + dbSession.commit(); + assertThat(issue.getId()).isNotNull(); + + // Find Issues since forever + Date t0 = new Date(0); + assertThat(dbClient.issueDao().findAfterDate(dbSession, t0)).hasSize(1); + + // Should not find any new issues + Date t1 = new Date(); + assertThat(dbClient.issueDao().findAfterDate(dbSession, t1)).hasSize(0); } -}
\ No newline at end of file +} |