Search in sources :

Example 6 with ChangelogWsResponse

use of org.sonarqube.ws.Issues.ChangelogWsResponse in project sonarqube by SonarSource.

the class ChangelogActionTest method return_changelog_on_none_existing_user.

@Test
public void return_changelog_on_none_existing_user() throws Exception {
    IssueDto issueDto = db.issues().insertIssue(newIssue());
    userSession.logIn("john").addProjectUuidPermissions(USER, issueDto.getProjectUuid());
    db.issues().insertFieldDiffs(issueDto, new FieldDiffs().setUserLogin("UNKNOWN").setDiff("severity", "MAJOR", "BLOCKER"));
    ChangelogWsResponse result = call(issueDto.getKey());
    assertThat(result.getChangelogList()).hasSize(1);
    assertThat(result.getChangelogList().get(0).hasUser()).isFalse();
    assertThat(result.getChangelogList().get(0).hasUserName()).isFalse();
    assertThat(result.getChangelogList().get(0).hasEmail()).isFalse();
    assertThat(result.getChangelogList().get(0).getDiffsList()).isNotEmpty();
}
Also used : ChangelogWsResponse(org.sonarqube.ws.Issues.ChangelogWsResponse) FieldDiffs(org.sonar.core.issue.FieldDiffs) IssueDto(org.sonar.db.issue.IssueDto) Test(org.junit.Test)

Example 7 with ChangelogWsResponse

use of org.sonarqube.ws.Issues.ChangelogWsResponse in project sonarqube by SonarSource.

the class ChangelogActionTest method changelog_of_file_move_contains_file_names.

@Test
public void changelog_of_file_move_contains_file_names() throws Exception {
    RuleDto rule = db.rules().insertRule(newRuleDto());
    ComponentDto project = db.components().insertProject(db.organizations().insert());
    ComponentDto file1 = db.components().insertComponent(newFileDto(project));
    ComponentDto file2 = db.components().insertComponent(newFileDto(project));
    IssueDto issueDto = db.issues().insertIssue(newDto(rule, file2, project));
    userSession.logIn("john").addProjectUuidPermissions(USER, issueDto.getProjectUuid());
    db.issues().insertFieldDiffs(issueDto, new FieldDiffs().setDiff("file", file1.uuid(), file2.uuid()));
    ChangelogWsResponse result = call(issueDto.getKey());
    assertThat(result.getChangelogList()).hasSize(1);
    assertThat(result.getChangelogList().get(0).hasUser()).isFalse();
    assertThat(result.getChangelogList().get(0).getCreationDate()).isNotEmpty();
    assertThat(result.getChangelogList().get(0).getDiffsList()).extracting(Diff::getKey, Diff::getOldValue, Diff::getNewValue).containsOnly(tuple("file", file1.longName(), file2.longName()));
}
Also used : RuleTesting.newRuleDto(org.sonar.db.rule.RuleTesting.newRuleDto) RuleDto(org.sonar.db.rule.RuleDto) ChangelogWsResponse(org.sonarqube.ws.Issues.ChangelogWsResponse) FieldDiffs(org.sonar.core.issue.FieldDiffs) ComponentDto(org.sonar.db.component.ComponentDto) IssueDto(org.sonar.db.issue.IssueDto) Test(org.junit.Test)

Example 8 with ChangelogWsResponse

use of org.sonarqube.ws.Issues.ChangelogWsResponse in project sonarqube by SonarSource.

the class ChangelogActionTest method return_many_changelog.

@Test
public void return_many_changelog() throws Exception {
    UserDto user = db.users().insertUser();
    IssueDto issueDto = db.issues().insertIssue(newIssue());
    userSession.logIn("john").addProjectUuidPermissions(USER, issueDto.getProjectUuid());
    db.issues().insertFieldDiffs(issueDto, new FieldDiffs().setUserLogin(user.getLogin()).setDiff("severity", "MAJOR", "BLOCKER"), new FieldDiffs().setDiff("status", "RESOLVED", "CLOSED"));
    ChangelogWsResponse result = call(issueDto.getKey());
    assertThat(result.getChangelogList()).hasSize(2);
}
Also used : ChangelogWsResponse(org.sonarqube.ws.Issues.ChangelogWsResponse) FieldDiffs(org.sonar.core.issue.FieldDiffs) UserDto(org.sonar.db.user.UserDto) UserTesting.newUserDto(org.sonar.db.user.UserTesting.newUserDto) IssueDto(org.sonar.db.issue.IssueDto) Test(org.junit.Test)

Example 9 with ChangelogWsResponse

use of org.sonarqube.ws.Issues.ChangelogWsResponse in project sonarqube by SonarSource.

the class ChangelogActionTest method return_changelog_when_no_new_value.

@Test
public void return_changelog_when_no_new_value() throws Exception {
    UserDto user = db.users().insertUser();
    IssueDto issueDto = db.issues().insertIssue(newIssue());
    userSession.logIn("john").addProjectUuidPermissions(USER, issueDto.getProjectUuid());
    db.issues().insertFieldDiffs(issueDto, new FieldDiffs().setUserLogin(user.getLogin()).setDiff("severity", "MAJOR", null));
    ChangelogWsResponse result = call(issueDto.getKey());
    assertThat(result.getChangelogList()).hasSize(1);
    assertThat(result.getChangelogList().get(0).getDiffsList().get(0).hasNewValue()).isFalse();
}
Also used : ChangelogWsResponse(org.sonarqube.ws.Issues.ChangelogWsResponse) FieldDiffs(org.sonar.core.issue.FieldDiffs) UserDto(org.sonar.db.user.UserDto) UserTesting.newUserDto(org.sonar.db.user.UserTesting.newUserDto) IssueDto(org.sonar.db.issue.IssueDto) Test(org.junit.Test)

Example 10 with ChangelogWsResponse

use of org.sonarqube.ws.Issues.ChangelogWsResponse in project sonarqube by SonarSource.

the class ChangelogActionTest method return_changelog_when_no_old_value.

@Test
public void return_changelog_when_no_old_value() throws Exception {
    UserDto user = db.users().insertUser();
    IssueDto issueDto = db.issues().insertIssue(newIssue());
    userSession.logIn("john").addProjectUuidPermissions(USER, issueDto.getProjectUuid());
    db.issues().insertFieldDiffs(issueDto, new FieldDiffs().setUserLogin(user.getLogin()).setDiff("severity", null, "BLOCKER"));
    ChangelogWsResponse result = call(issueDto.getKey());
    assertThat(result.getChangelogList()).hasSize(1);
    assertThat(result.getChangelogList().get(0).getDiffsList().get(0).hasOldValue()).isFalse();
}
Also used : ChangelogWsResponse(org.sonarqube.ws.Issues.ChangelogWsResponse) FieldDiffs(org.sonar.core.issue.FieldDiffs) UserDto(org.sonar.db.user.UserDto) UserTesting.newUserDto(org.sonar.db.user.UserTesting.newUserDto) IssueDto(org.sonar.db.issue.IssueDto) Test(org.junit.Test)

Aggregations

ChangelogWsResponse (org.sonarqube.ws.Issues.ChangelogWsResponse)13 Test (org.junit.Test)12 IssueDto (org.sonar.db.issue.IssueDto)12 FieldDiffs (org.sonar.core.issue.FieldDiffs)11 UserDto (org.sonar.db.user.UserDto)7 UserTesting.newUserDto (org.sonar.db.user.UserTesting.newUserDto)7 DbSession (org.sonar.db.DbSession)1 ComponentDto (org.sonar.db.component.ComponentDto)1 RuleDto (org.sonar.db.rule.RuleDto)1 RuleTesting.newRuleDto (org.sonar.db.rule.RuleTesting.newRuleDto)1