assertEquals(comment.getVisibility(), lastComment.getVisibility());
}
@Test
public void testVoteUnvote() {
final Issue issue1 = client.getIssueClient().getIssue("TST-1", pm);
assertFalse(issue1.getVotes().hasVoted());
assertEquals(1, issue1.getVotes().getVotes()); // the other user has voted
final String expectedMessage = isJira5xOrNewer() // JIRA 5.0 comes without Polish translation OOB
? "You cannot vote for an issue you have reported."
: "Nie mo\u017cesz g\u0142osowa\u0107 na zadanie kt\u00f3re utworzy\u0142e\u015b.";
// I hope that such Polish special characters (for better testing local specific behaviour of REST
assertErrorCode(Response.Status.NOT_FOUND, expectedMessage, new Runnable() {
@Override
public void run() {
client.getIssueClient().vote(issue1.getVotesUri(), pm);
}
});
final String issueKey = "TST-7";
Issue issue = client.getIssueClient().getIssue(issueKey, pm);
assertFalse(issue.getVotes().hasVoted());
assertEquals(0, issue.getVotes().getVotes());
client.getIssueClient().vote(issue.getVotesUri(), pm);
issue = client.getIssueClient().getIssue(issueKey, pm);
assertTrue(issue.getVotes().hasVoted());
assertEquals(1, issue.getVotes().getVotes());
client.getIssueClient().unvote(issue.getVotesUri(), pm);
issue = client.getIssueClient().getIssue(issueKey, pm);
assertFalse(issue.getVotes().hasVoted());
assertEquals(0, issue.getVotes().getVotes());
setUser2();
issue = client.getIssueClient().getIssue(issueKey, pm);
assertFalse(issue.getVotes().hasVoted());
assertEquals(0, issue.getVotes().getVotes());
final Issue finalIssue = issue;
assertErrorCode(Response.Status.NOT_FOUND, "Cannot remove a vote for an issue that the user has not already voted for.",
new Runnable() {
@Override
public void run() {
client.getIssueClient().unvote(finalIssue.getVotesUri(), pm);
}
});
issue = client.getIssueClient().getIssue(issueKey, pm);