Package org.sonar.core.issue.db

Examples of org.sonar.core.issue.db.IssueDto


    setupData("shared", "get_by_key");

    List<IssueDto> issues = dao.getByKeys(session, "ABCDE");
    assertThat(issues).hasSize(1);

    IssueDto issue = issues.get(0);
    assertThat(issue.getKee()).isEqualTo("ABCDE");
    assertThat(issue.getId()).isEqualTo(100L);
    assertThat(issue.getComponentId()).isEqualTo(401);
    assertThat(issue.getProjectId()).isEqualTo(399);
    assertThat(issue.getRuleId()).isEqualTo(500);
    assertThat(issue.getLanguage()).isEqualTo("java");
    assertThat(issue.getSeverity()).isEqualTo("BLOCKER");
    assertThat(issue.isManualSeverity()).isFalse();
    assertThat(issue.getMessage()).isNull();
    assertThat(issue.getLine()).isEqualTo(200);
    assertThat(issue.getEffortToFix()).isEqualTo(4.2);
    assertThat(issue.getStatus()).isEqualTo("OPEN");
    assertThat(issue.getResolution()).isEqualTo("FIXED");
    assertThat(issue.getChecksum()).isEqualTo("XXX");
    assertThat(issue.getAuthorLogin()).isEqualTo("karadoc");
    assertThat(issue.getReporter()).isEqualTo("arthur");
    assertThat(issue.getAssignee()).isEqualTo("perceval");
    assertThat(issue.getIssueAttributes()).isEqualTo("JIRA=FOO-1234");
    assertThat(issue.getIssueCreationDate()).isNotNull();
    assertThat(issue.getIssueUpdateDate()).isNotNull();
    assertThat(issue.getIssueCloseDate()).isNotNull();
    assertThat(issue.getCreatedAt()).isNotNull();
    assertThat(issue.getUpdatedAt()).isNotNull();
    assertThat(issue.getRuleRepo()).isEqualTo("squid");
    assertThat(issue.getRule()).isEqualTo("AvoidCycle");
    assertThat(issue.getComponentKey()).isEqualTo("Action.java");
    assertThat(issue.getProjectKey()).isEqualTo("struts");
  }
View Full Code Here


    setupData("shared", "find_by_action_plan");

    List<IssueDto> issues = dao.findByActionPlan(session, "AP-1");
    assertThat(issues).hasSize(1);

    IssueDto issue = issues.get(0);
    assertThat(issue.getKee()).isEqualTo("ABCDE");
    assertThat(issue.getActionPlanKey()).isEqualTo("AP-1");
    assertThat(issue.getComponentId()).isEqualTo(401);
    assertThat(issue.getProjectId()).isEqualTo(399);
    assertThat(issue.getRuleId()).isEqualTo(500);
    assertThat(issue.getLanguage()).isEqualTo("java");
    assertThat(issue.getSeverity()).isEqualTo("BLOCKER");
    assertThat(issue.isManualSeverity()).isFalse();
    assertThat(issue.getMessage()).isNull();
    assertThat(issue.getLine()).isEqualTo(200);
    assertThat(issue.getEffortToFix()).isEqualTo(4.2);
    assertThat(issue.getStatus()).isEqualTo("OPEN");
    assertThat(issue.getResolution()).isEqualTo("FIXED");
    assertThat(issue.getChecksum()).isEqualTo("XXX");
    assertThat(issue.getAuthorLogin()).isEqualTo("karadoc");
    assertThat(issue.getReporter()).isEqualTo("arthur");
    assertThat(issue.getAssignee()).isEqualTo("perceval");
    assertThat(issue.getIssueAttributes()).isEqualTo("JIRA=FOO-1234");
    assertThat(issue.getIssueCreationDate()).isNotNull();
    assertThat(issue.getIssueUpdateDate()).isNotNull();
    assertThat(issue.getIssueCloseDate()).isNotNull();
    assertThat(issue.getCreatedAt()).isNotNull();
    assertThat(issue.getUpdatedAt()).isNotNull();
    assertThat(issue.getRuleRepo()).isEqualTo("squid");
    assertThat(issue.getRule()).isEqualTo("AvoidCycle");
    assertThat(issue.getComponentKey()).isEqualTo("Action.java");
    assertThat(issue.getProjectKey()).isEqualTo("struts");
  }
View Full Code Here

  @Test
  public void insert() throws Exception {
    when(system2.now()).thenReturn(DateUtils.parseDate("2013-05-22").getTime());

    IssueDto dto = new IssueDto();
    dto.setComponent(new ComponentDto().setKey("struts:Action").setId(123L));
    dto.setProject(new ComponentDto().setKey("struts").setId(100L));
    dto.setRule(RuleTesting.newDto(RuleKey.of("squid", "S001")).setId(200));
    dto.setKee("ABCDE");
    dto.setLine(500);
    dto.setEffortToFix(3.14);
    dto.setDebt(10L);
    dto.setResolution("FIXED");
    dto.setStatus("RESOLVED");
    dto.setSeverity("BLOCKER");
    dto.setReporter("emmerik");
    dto.setAuthorLogin("morgan");
    dto.setAssignee("karadoc");
    dto.setActionPlanKey("current_sprint");
    dto.setIssueAttributes("JIRA=FOO-1234");
    dto.setChecksum("123456789");
    dto.setMessage("the message");

    dto.setIssueCreationDate(DateUtils.parseDate("2013-05-18"));
    dto.setIssueUpdateDate(DateUtils.parseDate("2013-05-19"));
    dto.setIssueCloseDate(DateUtils.parseDate("2013-05-20"));
    dto.setCreatedAt(DateUtils.parseDate("2013-05-21"));
    dto.setUpdatedAt(DateUtils.parseDate("2013-05-22"));

    dao.insert(session, dto);
    session.commit();

    checkTables("insert", new String[]{"id"}, "issues");
View Full Code Here

  public void update() throws Exception {
    when(system2.now()).thenReturn(DateUtils.parseDate("2013-05-22").getTime());

    setupData("update");

    IssueDto dto = new IssueDto();
    dto.setComponent(new ComponentDto().setKey("struts:Action").setId(123L));
    dto.setProject(new ComponentDto().setKey("struts").setId(101L));
    dto.setRule(RuleTesting.newDto(RuleKey.of("squid", "S001")).setId(200));
    dto.setKee("ABCDE");
    dto.setLine(500);
    dto.setEffortToFix(3.14);
    dto.setDebt(10L);
    dto.setResolution("FIXED");
    dto.setStatus("RESOLVED");
    dto.setSeverity("BLOCKER");
    dto.setReporter("emmerik");
    dto.setAuthorLogin("morgan");
    dto.setAssignee("karadoc");
    dto.setActionPlanKey("current_sprint");
    dto.setIssueAttributes("JIRA=FOO-1234");
    dto.setChecksum("123456789");
    dto.setMessage("the message");

    dto.setIssueCreationDate(DateUtils.parseDate("2013-05-18"));
    dto.setIssueUpdateDate(DateUtils.parseDate("2013-05-19"));
    dto.setIssueCloseDate(DateUtils.parseDate("2013-05-20"));
    dto.setCreatedAt(DateUtils.parseDate("2013-05-21"));
    dto.setUpdatedAt(DateUtils.parseDate("2013-05-22"));

    dao.update(session, dto);
    session.commit();

    checkTables("update", new String[]{"id"}, "issues");
View Full Code Here

    dbClient.issueAuthorizationDao().synchronizeAfter(dbSession, new Date(0));

    ComponentDto file = ComponentTesting.newFileDto(project);
    tester.get(ComponentDao.class).insert(dbSession, file);

    IssueDto issue = IssueTesting.newDto(rule, file, project).setIssueAttributes(KeyValueFormat.format(ImmutableMap.of("key", "value")));
    dbClient.issueDao().insert(dbSession, issue);

    dbSession.commit();

    // Check that Issue is in Index
    assertThat(indexClient.get(IssueIndex.class).countAll()).isEqualTo(1);

    // should find by key
    Issue issueDoc = indexClient.get(IssueIndex.class).getByKey(issue.getKey());

    // Check all normalized fields
    assertThat(issueDoc.actionPlanKey()).isEqualTo(issue.getActionPlanKey());
    assertThat(issueDoc.assignee()).isEqualTo(issue.getAssignee());
    assertThat(issueDoc.authorLogin()).isEqualTo(issue.getAuthorLogin());
    assertThat(issueDoc.closeDate()).isEqualTo(issue.getIssueCloseDate());
    assertThat(issueDoc.effortToFix()).isEqualTo(issue.getEffortToFix());
    assertThat(issueDoc.resolution()).isEqualTo(issue.getResolution());
    assertThat(issueDoc.ruleKey()).isEqualTo(RuleKey.of(issue.getRuleRepo(), issue.getRule()));
    assertThat(issueDoc.line()).isEqualTo(issue.getLine());
    assertThat(issueDoc.message()).isEqualTo(issue.getMessage());
    assertThat(issueDoc.reporter()).isEqualTo(issue.getReporter());
    assertThat(issueDoc.key()).isEqualTo(issue.getKey());
    assertThat(issueDoc.updateDate()).isEqualTo(issue.getIssueUpdateDate());
    assertThat(issueDoc.status()).isEqualTo(issue.getStatus());
    assertThat(issueDoc.severity()).isEqualTo(issue.getSeverity());
    assertThat(issueDoc.attributes()).isEqualTo(KeyValueFormat.parse(issue.getIssueAttributes()));
    assertThat(issueDoc.attribute("key")).isEqualTo("value");
  }
View Full Code Here

    tester.get(ComponentDao.class).insert(dbSession, project);

    ComponentDto file = ComponentTesting.newFileDto(project);
    tester.get(ComponentDao.class).insert(dbSession, file);

    IssueDto issue = IssueTesting.newDto(rule, file, project).setId(1L);
    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);
View Full Code Here

  @Test
  public void get_by_key() {
    setupData("shared", "get_by_key");

    IssueDto issue = dao.getByKey(session, "ABCDE");
    assertThat(issue.getKee()).isEqualTo("ABCDE");
    assertThat(issue.getId()).isEqualTo(100L);
    assertThat(issue.getComponentId()).isEqualTo(401);
    assertThat(issue.getProjectId()).isEqualTo(399);
    assertThat(issue.getRuleId()).isEqualTo(500);
    assertThat(issue.getLanguage()).isEqualTo("java");
    assertThat(issue.getSeverity()).isEqualTo("BLOCKER");
    assertThat(issue.isManualSeverity()).isFalse();
    assertThat(issue.getMessage()).isNull();
    assertThat(issue.getLine()).isEqualTo(200);
    assertThat(issue.getEffortToFix()).isEqualTo(4.2);
    assertThat(issue.getStatus()).isEqualTo("OPEN");
    assertThat(issue.getResolution()).isEqualTo("FIXED");
    assertThat(issue.getChecksum()).isEqualTo("XXX");
    assertThat(issue.getAuthorLogin()).isEqualTo("karadoc");
    assertThat(issue.getReporter()).isEqualTo("arthur");
    assertThat(issue.getAssignee()).isEqualTo("perceval");
    assertThat(issue.getIssueAttributes()).isEqualTo("JIRA=FOO-1234");
    assertThat(issue.getIssueCreationDate()).isNotNull();
    assertThat(issue.getIssueUpdateDate()).isNotNull();
    assertThat(issue.getIssueCloseDate()).isNotNull();
    assertThat(issue.getCreatedAt()).isNotNull();
    assertThat(issue.getUpdatedAt()).isNotNull();
    assertThat(issue.getRuleRepo()).isEqualTo("squid");
    assertThat(issue.getRule()).isEqualTo("AvoidCycle");
    assertThat(issue.getComponentKey()).isEqualTo("Action.java");
    assertThat(issue.getProjectKey()).isEqualTo("struts");
  }
View Full Code Here

  }

  @VisibleForTesting
  protected void mergeMatched(IssueTrackingResult result) {
    for (DefaultIssue issue : result.matched()) {
      IssueDto ref = result.matching(issue);

      // invariant fields
      issue.setKey(ref.getKee());
      issue.setCreationDate(ref.getIssueCreationDate());
      issue.setUpdateDate(ref.getIssueUpdateDate());
      issue.setCloseDate(ref.getIssueCloseDate());

      // non-persisted fields
      issue.setNew(false);
      issue.setEndOfLife(false);
      issue.setOnDisabledRule(false);
      issue.setSelectedAt(ref.getSelectedAt());

      // fields to update with old values
      issue.setActionPlanKey(ref.getActionPlanKey());
      issue.setResolution(ref.getResolution());
      issue.setStatus(ref.getStatus());
      issue.setAssignee(ref.getAssignee());
      issue.setAuthorLogin(ref.getAuthorLogin());

      if (ref.getIssueAttributes() != null) {
        issue.setAttributes(KeyValueFormat.parse(ref.getIssueAttributes()));
      }

      // populate existing changelog
      Collection<IssueChangeDto> issueChangeDtos = initialOpenIssues.selectChangelog(issue.key());
      for (IssueChangeDto issueChangeDto : issueChangeDtos) {
        issue.addChange(issueChangeDto.toFieldDiffs());
      }

      // fields to update with current values
      if (ref.isManualSeverity()) {
        issue.setManualSeverity(true);
        issue.setSeverity(ref.getSeverity());
      } else {
        updater.setPastSeverity(issue, ref.getSeverity(), changeContext);
      }
      updater.setPastLine(issue, ref.getLine());
      updater.setPastMessage(issue, ref.getMessage(), changeContext);
      updater.setPastEffortToFix(issue, ref.getEffortToFix(), changeContext);
      Long debtInMinutes = ref.getDebt();
      Duration previousTechnicalDebt = debtInMinutes != null ? Duration.create(debtInMinutes) : null;
      updater.setPastTechnicalDebt(issue, previousTechnicalDebt, changeContext);
      updater.setPastProject(issue, ref.getProjectKey(), changeContext);
    }
  }
View Full Code Here

    final Date now = DateUtils.addSeconds(DateUtils.truncate(new Date(), Calendar.MILLISECOND), 1);

    issueDao.selectNonClosedIssuesByModule(project.getId(), new ResultHandler() {
      @Override
      public void handleResult(ResultContext rc) {
        IssueDto dto = (IssueDto) rc.getResultObject();
        dto.setSelectedAt(now);
        initialOpenIssuesStack.addIssue(dto);
      }
    });

    issueChangeDao.selectChangelogOnNonClosedIssuesByModuleAndType(project.getId(), new ResultHandler() {
View Full Code Here

  protected void doInsert(DbSession session, Date now, DefaultIssue issue) {
    IssueMapper issueMapper = session.getMapper(IssueMapper.class);
    long componentId = componentId(issue);
    long projectId = projectId();
    int ruleId = ruleId(issue);
    IssueDto dto = IssueDto.toDtoForBatchInsert(issue, componentId, projectId, ruleId, now);
    issueMapper.insert(dto);
  }
View Full Code Here

TOP

Related Classes of org.sonar.core.issue.db.IssueDto

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.