Search in sources :

Example 46 with DefaultIssue

use of org.sonar.core.issue.DefaultIssue in project sonarqube by SonarSource.

the class IssueStorageTest method batch_update_issues.

@Test
public void batch_update_issues() {
    dbTester.prepareDbUnit(getClass(), "should_update_issues.xml");
    FakeBatchSaver saver = new FakeBatchSaver(dbClient, new FakeRuleFinder());
    DefaultIssueComment comment = DefaultIssueComment.create("ABCDE", "emmerik", "the comment");
    // override generated key
    comment.setKey("FGHIJ");
    Date date = DateUtils.parseDateTime("2013-05-18T12:00:00+0000");
    DefaultIssue issue = new DefaultIssue().setKey("ABCDE").setType(RuleType.BUG).setNew(false).setChanged(true).setLine(5000).setEffort(Duration.create(10L)).setChecksum("FFFFF").setAuthorLogin("simon").setAssignee("loic").setFieldChange(context, "severity", "INFO", "BLOCKER").setResolution("FIXED").setStatus("RESOLVED").setSeverity("BLOCKER").setAttribute("foo", "bar").addComment(comment).setCreationDate(date).setUpdateDate(date).setCloseDate(date).setComponentUuid("uuid-100").setProjectUuid("uuid-10").setRuleKey(RuleKey.of("xxx", "unknown")).setComponentKey("not:a:component");
    saver.save(issue);
    dbTester.assertDbUnit(getClass(), "should_update_issues-result.xml", new String[] { "id", "created_at", "updated_at", "issue_change_creation_date" }, "issues", "issue_changes");
}
Also used : DefaultIssue(org.sonar.core.issue.DefaultIssue) DefaultIssueComment(org.sonar.core.issue.DefaultIssueComment) Date(java.util.Date) Test(org.junit.Test)

Example 47 with DefaultIssue

use of org.sonar.core.issue.DefaultIssue in project sonarqube by SonarSource.

the class IssueStorageTest method batch_insert_new_issues_with_session.

@Test
public void batch_insert_new_issues_with_session() {
    FakeBatchSaver saver = new FakeBatchSaver(dbClient, new FakeRuleFinder());
    DefaultIssueComment comment = DefaultIssueComment.create("ABCDE", "emmerik", "the comment");
    // override generated key
    comment.setKey("FGHIJ");
    Date date = DateUtils.parseDateTime("2013-05-18T12:00:00+0000");
    DefaultIssue issue = new DefaultIssue().setKey("ABCDE").setType(RuleType.BUG).setNew(true).setRuleKey(RuleKey.of("squid", "AvoidCycle")).setLine(5000).setEffort(Duration.create(10L)).setResolution("OPEN").setStatus("OPEN").setSeverity("BLOCKER").setAttribute("foo", "bar").addComment(comment).setCreationDate(date).setUpdateDate(date).setCloseDate(date).setComponentUuid("uuid-100").setProjectUuid("uuid-10").setComponentKey("struts:Action");
    saver.save(dbTester.getSession(), issue);
    dbTester.getSession().commit();
    dbTester.assertDbUnit(getClass(), "should_insert_new_issues-result.xml", new String[] { "id", "created_at", "updated_at", "issue_change_creation_date" }, "issues", "issue_changes");
}
Also used : DefaultIssue(org.sonar.core.issue.DefaultIssue) DefaultIssueComment(org.sonar.core.issue.DefaultIssueComment) Date(java.util.Date) Test(org.junit.Test)

Example 48 with DefaultIssue

use of org.sonar.core.issue.DefaultIssue in project sonarqube by SonarSource.

the class IssueStorageTest method server_insert_new_issues_with_session.

@Test
public void server_insert_new_issues_with_session() {
    ComponentDto project = new ComponentDto().setId(10L).setUuid("uuid-10");
    ComponentDto component = new ComponentDto().setId(100L).setUuid("uuid-100");
    FakeServerSaver saver = new FakeServerSaver(dbClient, new FakeRuleFinder(), component, project);
    DefaultIssueComment comment = DefaultIssueComment.create("ABCDE", "emmerik", "the comment");
    // override generated key
    comment.setKey("FGHIJ");
    Date date = DateUtils.parseDateTime("2013-05-18T12:00:00+0000");
    DefaultIssue issue = new DefaultIssue().setKey("ABCDE").setType(RuleType.BUG).setNew(true).setRuleKey(RuleKey.of("squid", "AvoidCycle")).setLine(5000).setEffort(Duration.create(10L)).setResolution("OPEN").setStatus("OPEN").setSeverity("BLOCKER").setAttribute("foo", "bar").addComment(comment).setCreationDate(date).setUpdateDate(date).setCloseDate(date).setComponentKey("struts:Action").setComponentUuid("component-uuid").setProjectUuid("project-uuid");
    saver.save(dbTester.getSession(), issue);
    dbTester.getSession().commit();
    dbTester.assertDbUnit(getClass(), "should_insert_new_issues-result.xml", new String[] { "id", "created_at", "updated_at", "issue_change_creation_date" }, "issues", "issue_changes");
}
Also used : ComponentDto(org.sonar.db.component.ComponentDto) DefaultIssue(org.sonar.core.issue.DefaultIssue) DefaultIssueComment(org.sonar.core.issue.DefaultIssueComment) Date(java.util.Date) Test(org.junit.Test)

Example 49 with DefaultIssue

use of org.sonar.core.issue.DefaultIssue in project sonarqube by SonarSource.

the class IssueStorageTest method server_update_issues.

@Test
public void server_update_issues() {
    dbTester.prepareDbUnit(getClass(), "should_update_issues.xml");
    ComponentDto project = new ComponentDto().setId(10L).setUuid("whatever-uuid");
    ComponentDto component = new ComponentDto().setId(100L).setUuid("whatever-uuid-2");
    FakeServerSaver saver = new FakeServerSaver(dbClient, new FakeRuleFinder(), component, project);
    DefaultIssueComment comment = DefaultIssueComment.create("ABCDE", "emmerik", "the comment");
    // override generated key
    comment.setKey("FGHIJ");
    Date date = DateUtils.parseDateTime("2013-05-18T12:00:00+0000");
    DefaultIssue issue = new DefaultIssue().setKey("ABCDE").setType(RuleType.BUG).setNew(false).setChanged(true).setLine(5000).setEffort(Duration.create(10L)).setChecksum("FFFFF").setAuthorLogin("simon").setAssignee("loic").setFieldChange(context, "severity", "INFO", "BLOCKER").setResolution("FIXED").setStatus("RESOLVED").setSeverity("BLOCKER").setAttribute("foo", "bar").addComment(comment).setCreationDate(date).setUpdateDate(date).setCloseDate(date).setProjectUuid("uuid-10").setRuleKey(RuleKey.of("xxx", "unknown")).setComponentKey("not:a:component");
    saver.save(issue);
    dbTester.assertDbUnit(getClass(), "should_update_issues-result.xml", new String[] { "id", "created_at", "updated_at", "issue_change_creation_date" }, "issues", "issue_changes");
}
Also used : ComponentDto(org.sonar.db.component.ComponentDto) DefaultIssue(org.sonar.core.issue.DefaultIssue) DefaultIssueComment(org.sonar.core.issue.DefaultIssueComment) Date(java.util.Date) Test(org.junit.Test)

Example 50 with DefaultIssue

use of org.sonar.core.issue.DefaultIssue in project sonarqube by SonarSource.

the class IssueUpdaterTest method update_issue.

@Test
public void update_issue() throws Exception {
    DefaultIssue issue = issueDbTester.insertIssue(newIssue().setSeverity(MAJOR)).toDefaultIssue();
    IssueChangeContext context = IssueChangeContext.createUser(new Date(), "john");
    issueFieldsSetter.setSeverity(issue, BLOCKER, context);
    underTest.saveIssue(dbTester.getSession(), issue, context, null);
    IssueDto issueReloaded = dbClient.issueDao().selectByKey(dbTester.getSession(), issue.key()).get();
    assertThat(issueReloaded.getSeverity()).isEqualTo(BLOCKER);
}
Also used : IssueChangeContext(org.sonar.core.issue.IssueChangeContext) IssueDto(org.sonar.db.issue.IssueDto) DefaultIssue(org.sonar.core.issue.DefaultIssue) Date(java.util.Date) Test(org.junit.Test)

Aggregations

DefaultIssue (org.sonar.core.issue.DefaultIssue)140 Test (org.junit.Test)120 Date (java.util.Date)27 ActiveRule (org.sonar.server.computation.task.projectanalysis.qualityprofile.ActiveRule)15 IssueChangeContext (org.sonar.core.issue.IssueChangeContext)14 DefaultIssueComment (org.sonar.core.issue.DefaultIssueComment)8 IssueDto (org.sonar.db.issue.IssueDto)8 DbSession (org.sonar.db.DbSession)6 ComponentDto (org.sonar.db.component.ComponentDto)5 Issue (org.sonar.api.issue.Issue)4 FieldDiffs (org.sonar.core.issue.FieldDiffs)4 ArrayList (java.util.ArrayList)3 RuleKey (org.sonar.api.rule.RuleKey)3 User (org.sonar.api.user.User)3 IssueChangeMapper (org.sonar.db.issue.IssueChangeMapper)3 IssueMapper (org.sonar.db.issue.IssueMapper)3 RuleDto (org.sonar.db.rule.RuleDto)3 IssueChangeNotification (org.sonar.server.issue.notification.IssueChangeNotification)3 DefaultUser (org.sonar.core.user.DefaultUser)2 RuleTesting.newRuleDto (org.sonar.db.rule.RuleTesting.newRuleDto)2