underTest.onIssue(FILE, issue);
assertThat(logTester.logs(LoggerLevel.WARN)).containsOnly(
- "No SCM info has been found for issue DefaultIssue[key=<null>,type=VULNERABILITY,componentUuid=<null>,componentKey=<null>,moduleUuid=<null>,moduleUuidPath=<null>,projectUuid=<null>,projectKey=<null>,ruleKey=<null>,language=<null>,severity=<null>,manualSeverity=false,message=<null>,line=2,gap=<null>,effort=<null>,status=<null>,resolution=<null>,reporter=<null>,assignee=<null>,checksum=<null>,attributes=<null>,authorLogin=<null>,comments=<null>,tags=<null>,locations=<null>,creationDate=<null>,updateDate=<null>,closeDate=<null>,currentChange=<null>,changes=<null>,isNew=true,beingClosed=false,onDisabledRule=false,isChanged=false,sendNotifications=false,selectedAt=<null>]");
+ "No SCM info has been found for issue DefaultIssue[key=<null>,type=VULNERABILITY,componentUuid=<null>,componentKey=<null>," +
+ "moduleUuid=<null>,moduleUuidPath=<null>,projectUuid=<null>,projectKey=<null>,ruleKey=<null>,language=<null>,severity=<null>," +
+ "manualSeverity=false,message=<null>,line=2,gap=<null>,effort=<null>,status=<null>,resolution=<null>," +
+ "assignee=<null>,checksum=<null>,attributes=<null>,authorLogin=<null>,comments=<null>,tags=<null>," +
+ "locations=<null>,creationDate=<null>,updateDate=<null>,closeDate=<null>,currentChange=<null>,changes=<null>,isNew=true," +
+ "beingClosed=false,onDisabledRule=false,isChanged=false,sendNotifications=false,selectedAt=<null>]");
}
private void setSingleChangeset(String author, Long date, String revision) {
.setRuleKey(RuleKey.of("squid", "AvoidCycle"))
.setLine(5000)
.setEffort(Duration.create(10L))
- .setReporter("emmerik")
.setResolution("OPEN")
.setStatus("OPEN")
.setSeverity("BLOCKER")
.setRuleKey(RuleKey.of("squid", "AvoidCycle"))
.setLine(5000)
.setEffort(Duration.create(10L))
- .setReporter("emmerik")
.setResolution("OPEN")
.setStatus("OPEN")
.setSeverity("BLOCKER")
.setRuleKey(RuleKey.of("squid", "AvoidCycle"))
.setLine(5000)
.setEffort(Duration.create(10L))
- .setReporter("emmerik")
.setResolution("OPEN")
.setStatus("OPEN")
.setSeverity("BLOCKER")
.setAuthorLogin("simon")
.setAssignee("loic")
.setFieldChange(context, "severity", "INFO", "BLOCKER")
- .setReporter("emmerik")
.setResolution("FIXED")
.setStatus("RESOLVED")
.setSeverity("BLOCKER")
.setAuthorLogin("simon")
.setAssignee("loic")
.setFieldChange(context, "severity", "INFO", "BLOCKER")
- .setReporter("emmerik")
.setResolution("FIXED")
.setStatus("RESOLVED")
.setSeverity("BLOCKER")
.setProjectKey("struts")
.setLine(5000)
.setEffort(Duration.create(10L))
- .setReporter("emmerik")
.setResolution("OPEN")
.setStatus("OPEN")
.setSeverity("BLOCKER")
.setAuthorLogin("simon")
.setAssignee("loic")
.setFieldChange(context, "severity", "INFO", "BLOCKER")
- .setReporter("emmerik")
.setResolution("FIXED")
.setStatus("RESOLVED")
.setSeverity("BLOCKER")
DefaultIssue issue = new DefaultIssue()
.setKey("ABCDE")
.setStatus(STATUS_CLOSED)
- .setRuleKey(RuleKey.of("manual", "Performance"))
- .setReporter("simon");
+ .setRuleKey(RuleKey.of("manual", "Performance"));
List<Transition> transitions = workflow.outTransitions(issue);
assertThat(keys(transitions)).containsOnly("reopen");
.setKey("ABCDE")
.setRuleKey(RuleKey.of(MANUAL_REPOSITORY_KEY, "Performance"))
- // resolved by user
+ // resolved by user
.setResolution(RESOLUTION_FIXED)
.setStatus(STATUS_RESOLVED)
- // but unmatched by tracking engine
+ // but unmatched by tracking engine
.setBeingClosed(true);
workflow.start();
DefaultIssue issue = new DefaultIssue()
.setKey("ABCDE")
.setStatus(STATUS_OPEN)
- .setRuleKey(RuleKey.of("manual", "Performance"))
- .setReporter("simon");
+ .setRuleKey(RuleKey.of("manual", "Performance"));
workflow.start();
.setKey("ABCDE")
.setStatus(STATUS_OPEN)
.setRuleKey(RuleKey.of("manual", "Performance"))
- .setReporter("simon")
.setBeingClosed(true)
.setOnDisabledRule(true);
.setKey("ABCDE")
.setStatus(STATUS_OPEN)
.setRuleKey(RuleKey.of("manual", "Performance"))
- .setReporter("simon")
.setBeingClosed(true)
.setOnDisabledRule(false);
rule_id="200"
created_at="[null]"
updated_at="[null]"
- reporter="emmerik"
+ reporter="[null]"
issue_attributes="foo=bar"
tags="[null]"
action_plan_key="[null]"
rule_id="200"
created_at="2013-05-18"
updated_at="2013-05-18"
- reporter="emmerik"
+ reporter="[null]"
issue_attributes="foo=bar"
tags="[null]"
action_plan_key="[null]"
rule_id="200"
created_at="1400000000000"
updated_at="1400000000000"
- reporter="emmerik"
+ reporter="[null]"
issue_attributes="foo=bar"
tags="[null]"
action_plan_key="[null]"
rule_id="200"
created_at="1000000000"
updated_at="1000000000"
- reporter="emmerik"
+ reporter="[null]"
issue_attributes="foo=bar"
tags="[null]"
action_plan_key="[null]"
private Duration effort;
private String status;
private String resolution;
- private String reporter;
private String assignee;
private String checksum;
private Map<String, String> attributes = null;
return this;
}
+ /**
+ * @deprecated since 5.5, manual issue feature has been dropped.
+ */
+ @Deprecated
@Override
@CheckForNull
public String reporter() {
- return reporter;
- }
-
- public DefaultIssue setReporter(@Nullable String s) {
- this.reporter = s;
- return this;
+ return null;
}
@Override
private String message;
private String severity;
private Double effortToFix;
- private String reporter;
private String assignee;
private RuleType type;
private Map<String, String> attributes;
return this;
}
+ /**
+ * @deprecated since 5.5, manual issue feature has been dropped.
+ */
+ @Deprecated
@Override
public DefaultIssueBuilder reporter(@Nullable String s) {
- this.reporter = s;
return this;
}
issue.setManualSeverity(false);
issue.setGap(effortToFix);
issue.setLine(line);
- issue.setReporter(reporter);
issue.setAssignee(assignee);
issue.setAttributes(attributes);
issue.setResolution(null);
.setEffort(Duration.create(28800L))
.setStatus(Issue.STATUS_CLOSED)
.setResolution(Issue.RESOLUTION_FIXED)
- .setReporter("simon")
.setAssignee("julien")
.setAuthorLogin("steph")
.setChecksum("c7b5db46591806455cf082bb348631e8")
assertThat(issue.manualSeverity()).isTrue();
assertThat(issue.message()).isEqualTo("a message");
assertThat(issue.line()).isEqualTo(7);
- assertThat(issue.effortToFix()).isEqualTo(1.2d);
- assertThat(issue.debt()).isEqualTo(Duration.create(28800L));
+ assertThat(issue.gap()).isEqualTo(1.2d);
+ assertThat(issue.effort()).isEqualTo(Duration.create(28800L));
assertThat(issue.status()).isEqualTo(Issue.STATUS_CLOSED);
assertThat(issue.resolution()).isEqualTo(Issue.RESOLUTION_FIXED);
- assertThat(issue.reporter()).isEqualTo("simon");
assertThat(issue.assignee()).isEqualTo("julien");
assertThat(issue.authorLogin()).isEqualTo("steph");
assertThat(issue.checksum()).isEqualTo("c7b5db46591806455cf082bb348631e8");
@Test
public void test_nullable_fields() throws Exception {
issue.setGap(null).setSeverity(null).setLine(null);
- assertThat(issue.effortToFix()).isNull();
+ assertThat(issue.gap()).isNull();
assertThat(issue.severity()).isNull();
assertThat(issue.line()).isNull();
}
private String status;
private String resolution;
private String checksum;
- private String reporter;
private String assignee;
private String authorLogin;
private String issueAttributes;
.setSeverity(issue.severity())
.setManualSeverity(issue.manualSeverity())
.setChecksum(issue.checksum())
- .setReporter(issue.reporter())
.setAssignee(issue.assignee())
.setRuleId(ruleId)
.setRuleKey(issue.ruleKey().repository(), issue.ruleKey().rule())
.setIssueUpdateDate(issue.updateDate())
.setSelectedAt(issue.selectedAt())
- // technical dates
+ // technical dates
.setCreatedAt(now)
.setUpdatedAt(now);
}
.setSeverity(issue.severity())
.setChecksum(issue.checksum())
.setManualSeverity(issue.manualSeverity())
- .setReporter(issue.reporter())
.setAssignee(issue.assignee())
.setIssueAttributes(KeyValueFormat.format(issue.attributes()))
.setAuthorLogin(issue.authorLogin())
.setIssueUpdateDate(issue.updateDate())
.setSelectedAt(issue.selectedAt())
- // technical date
+ // technical date
.setUpdatedAt(now);
}
return this;
}
- @CheckForNull
- public String getReporter() {
- return reporter;
- }
-
- public IssueDto setReporter(@Nullable String s) {
- checkArgument(s == null || s.length() <= 255, "Value is too long for issue reporter: %s", s);
- this.reporter = s;
- return this;
- }
-
@CheckForNull
public String getAssignee() {
return assignee;
issue.setLine(line);
issue.setChecksum(checksum);
issue.setSeverity(severity);
- issue.setReporter(reporter);
issue.setAssignee(assignee);
issue.setAttributes(KeyValueFormat.parse(Objects.firstNonNull(issueAttributes, "")));
issue.setComponentKey(componentKey);
i.status as status,
i.resolution as resolution,
i.checksum as checksum,
- i.reporter as reporter,
i.assignee as assignee,
i.author_login as authorLogin,
i.tags as tagsString,
<insert id="insert" parameterType="Issue" useGeneratedKeys="false" keyProperty="id">
INSERT INTO issues (kee, rule_id, severity, manual_severity,
message, line, locations, gap, effort, status, tags,
- resolution, checksum, reporter, assignee, author_login, issue_attributes, issue_creation_date, issue_update_date,
+ resolution, checksum, assignee, author_login, issue_attributes, issue_creation_date, issue_update_date,
issue_close_date, created_at, updated_at, component_uuid, project_uuid, issue_type)
VALUES (#{kee,jdbcType=VARCHAR}, #{ruleId,jdbcType=INTEGER},
#{severity,jdbcType=VARCHAR},
#{locations,jdbcType=BINARY},
#{gap,jdbcType=DOUBLE}, #{effort,jdbcType=INTEGER}, #{status,jdbcType=VARCHAR},
#{tagsString,jdbcType=VARCHAR}, #{resolution,jdbcType=VARCHAR}, #{checksum,jdbcType=VARCHAR},
- #{reporter,jdbcType=VARCHAR}, #{assignee,jdbcType=VARCHAR}, #{authorLogin,jdbcType=VARCHAR},
+ #{assignee,jdbcType=VARCHAR}, #{authorLogin,jdbcType=VARCHAR},
#{issueAttributes,jdbcType=VARCHAR},
#{issueCreationTime,jdbcType=BIGINT},#{issueUpdateTime,jdbcType=BIGINT}, #{issueCloseTime,jdbcType=BIGINT},
#{createdAt,jdbcType=BIGINT}, #{updatedAt,jdbcType=BIGINT},
status=#{status,jdbcType=VARCHAR},
resolution=#{resolution,jdbcType=VARCHAR},
checksum=#{checksum,jdbcType=VARCHAR},
- reporter=#{reporter,jdbcType=VARCHAR},
assignee=#{assignee,jdbcType=VARCHAR},
author_login=#{authorLogin,jdbcType=VARCHAR},
tags=#{tagsString,jdbcType=VARCHAR},
status=#{status,jdbcType=VARCHAR},
resolution=#{resolution,jdbcType=VARCHAR},
checksum=#{checksum,jdbcType=VARCHAR},
- reporter=#{reporter,jdbcType=VARCHAR},
assignee=#{assignee,jdbcType=VARCHAR},
author_login=#{authorLogin,jdbcType=VARCHAR},
tags=#{tagsString,jdbcType=VARCHAR},
i.status as status,
i.resolution as resolution,
i.checksum as checksum,
- i.reporter as reporter,
i.assignee as assignee,
i.author_login as authorLogin,
i.tags as tagsString,
import static java.util.Arrays.asList;
import static org.assertj.core.api.Assertions.assertThat;
-
public class IssueDaoTest {
public static final RuleDto RULE = RuleTesting.newXooX1();
assertThat(issue.getResolution()).isEqualTo("FIXED");
assertThat(issue.getChecksum()).isEqualTo("123456789");
assertThat(issue.getAuthorLogin()).isEqualTo("morgan");
- assertThat(issue.getReporter()).isEqualTo("emmerik");
assertThat(issue.getAssignee()).isEqualTo("karadoc");
assertThat(issue.getIssueAttributes()).isEqualTo("JIRA=FOO-1234");
assertThat(issue.getIssueCreationDate()).isNotNull();
dto.setResolution("FIXED");
dto.setStatus("RESOLVED");
dto.setSeverity("BLOCKER");
- dto.setReporter("emmerik");
dto.setAuthorLogin("morgan");
dto.setAssignee("karadoc");
dto.setIssueAttributes("JIRA=FOO-1234");
.setSeverity("BLOCKER")
.setMessage("message")
.setManualSeverity(true)
- .setReporter("arthur")
.setAssignee("perceval")
.setIssueAttributes("key=value")
.setAuthorLogin("pierre")
assertThat(issue.projectKey()).isEqualTo("org.sonar.sample");
assertThat(issue.status()).isEqualTo(Issue.STATUS_CLOSED);
assertThat(issue.resolution()).isEqualTo(Issue.RESOLUTION_FALSE_POSITIVE);
- assertThat(issue.effortToFix()).isEqualTo(15.0);
- assertThat(issue.debt()).isEqualTo(Duration.create(10L));
+ assertThat(issue.gap()).isEqualTo(15.0);
+ assertThat(issue.effort()).isEqualTo(Duration.create(10L));
assertThat(issue.line()).isEqualTo(6);
assertThat(issue.severity()).isEqualTo("BLOCKER");
assertThat(issue.message()).isEqualTo("message");
assertThat(issue.manualSeverity()).isTrue();
- assertThat(issue.reporter()).isEqualTo("arthur");
assertThat(issue.assignee()).isEqualTo("perceval");
assertThat(issue.attribute("key")).isEqualTo("value");
assertThat(issue.authorLogin()).isEqualTo("pierre");
assertThat(result.getResolution()).isEqualTo("FIXED");
assertThat(result.getStatus()).isEqualTo("RESOLVED");
assertThat(result.getSeverity()).isEqualTo("BLOCKER");
- assertThat(result.getReporter()).isEqualTo("emmerik");
assertThat(result.getAuthorLogin()).isEqualTo("morgan");
assertThat(result.getAssignee()).isEqualTo("karadoc");
assertThat(result.getIssueAttributes()).isEqualTo("JIRA=FOO-1234");
update.setResolution("FIXED");
update.setStatus("RESOLVED");
update.setSeverity("BLOCKER");
- update.setReporter("emmerik");
update.setAuthorLogin("morgan");
update.setAssignee("karadoc");
update.setIssueAttributes("JIRA=FOO-1234");
assertThat(result.getResolution()).isEqualTo("FIXED");
assertThat(result.getStatus()).isEqualTo("RESOLVED");
assertThat(result.getSeverity()).isEqualTo("BLOCKER");
- assertThat(result.getReporter()).isEqualTo("emmerik");
assertThat(result.getAuthorLogin()).isEqualTo("morgan");
assertThat(result.getAssignee()).isEqualTo("karadoc");
assertThat(result.getIssueAttributes()).isEqualTo("JIRA=FOO-1234");
.setResolution("FIXED")
.setStatus("RESOLVED")
.setSeverity("BLOCKER")
- .setReporter("emmerik")
.setAuthorLogin("morgan")
.setAssignee("karadoc")
.setIssueAttributes("JIRA=FOO-1234")
line="200"
gap="[null]"
checksum="[null]"
- reporter="user"
+ reporter="[null]"
assignee="user"
author_login="[null]"
issue_attributes="[null]"
line="200"
gap="[null]"
checksum="[null]"
- reporter="user"
+ reporter="[null]"
assignee="user"
author_login="[null]"
issue_attributes="[null]"
status="OPEN"
resolution="[null]"
checksum="XXX"
- reporter="arthur"
+ reporter="[null]"
assignee="perceval"
author_login="[null]"
issue_attributes="JIRA=FOO-1234"
status="OPEN"
resolution="[null]"
checksum="XXX"
- reporter="arthur"
+ reporter="[null]"
assignee="perceval"
author_login="[null]"
issue_attributes="JIRA=FOO-1234"
status="OPEN"
resolution="[null]"
checksum="XXX"
- reporter="arthur"
+ reporter="[null]"
assignee="perceval"
author_login="[null]"
issue_attributes="JIRA=FOO-1234"
status="OPEN"
resolution="FIXED"
checksum="XXX"
- reporter="arthur"
+ reporter="[null]"
assignee="perceval"
author_login="[null]"
issue_attributes="JIRA=FOO-1234"
status="OPEN"
resolution="FIXED"
checksum="XXX"
- reporter="arthur"
+ reporter="[null]"
assignee="perceval"
author_login="[null]"
issue_attributes="JIRA=FOO-1234"
status="OPEN"
resolution="FIXED"
checksum="XXX"
- reporter="arthur"
+ reporter="[null]"
assignee="perceval"
author_login="[null]"
issue_attributes="JIRA=FOO-1234"
status="OPEN"
resolution="[null]"
checksum="[null]"
- reporter="user"
+ reporter="[null]"
assignee="user"
author_login="[null]"
issue_attributes="[null]"
status="OPEN"
resolution="[null]"
checksum="[null]"
- reporter="user"
+ reporter="[null]"
assignee="user"
author_login="[null]"
issue_attributes="[null]"
status="RESOLVED"
resolution="FIXED"
checksum="123456789"
- reporter="emmerik"
+ reporter="[null]"
author_login="morgan"
assignee="karadoc"
issue_attributes="JIRA=FOO-1234"
status="OPEN"
resolution="FIXED"
checksum="XXX"
- reporter="arthur"
+ reporter="[null]"
assignee="perceval"
author_login="[null]"
issue_attributes="JIRA=FOO-1234"
status="OPEN"
resolution="FIXED"
checksum="XXX"
- reporter="arthur"
+ reporter="[null]"
assignee="[null]"
author_login="[null]"
issue_attributes="JIRA=FOO-1234"
status="OPEN"
resolution="FIXED"
checksum="XXX"
- reporter="arthur"
+ reporter="[null]"
assignee="perceval"
author_login="[null]"
issue_attributes="JIRA=FOO-1234"
package org.sonar.api.issue;
import java.util.List;
+import javax.annotation.CheckForNull;
import javax.annotation.Nullable;
import org.sonar.api.batch.sensor.issue.NewIssue;
import org.sonar.api.batch.sensor.issue.NewIssueLocation;
IssueBuilder severity(@Nullable String severity);
/**
- * Login of the user who reported the issue. Optional.
+ * @deprecated since 5.5, manual issue feature has been dropped.
*/
+ @Deprecated
+ @CheckForNull
IssueBuilder reporter(@Nullable String reporter);
IssueBuilder effortToFix(@Nullable Double d);
String resolution();
/**
- * Login of the user who reported this issue. Null if the issue is reported by a rule engine.
+ * @deprecated since 5.5, manual issue feature has been dropped.
*/
+ @Deprecated
@CheckForNull
String reporter();