diff options
author | Guy Perron | 2014-08-27 15:02:38 +0000 |
---|---|---|
committer | Sam Davis | 2014-09-03 00:42:50 +0000 |
commit | 538c1bb85769cfbd8c93d29e9a5142fb9e1c1810 (patch) | |
tree | 2d67fd11fa459cb47a4773127c2ed27c7340017d | |
parent | a66d319e326fbc81302c4dd7fa47abb6295ccda8 (diff) | |
download | org.eclipse.mylyn.reviews-538c1bb85769cfbd8c93d29e9a5142fb9e1c1810.tar.gz org.eclipse.mylyn.reviews-538c1bb85769cfbd8c93d29e9a5142fb9e1c1810.tar.xz org.eclipse.mylyn.reviews-538c1bb85769cfbd8c93d29e9a5142fb9e1c1810.zip |
441710: add tests for editing and deleting a comment
Change-Id: I767e2ede7819f141137753c3e3fd6046bcf1c2e6
Task-Url:https://bugs.eclipse.org/bugs/show_bug.cgi?id=441710
Signed-off-by: Guy Perron <guy.perron@ericsson.com>
4 files changed, 45 insertions, 31 deletions
diff --git a/org.eclipse.mylyn.gerrit.core/src/org/eclipse/mylyn/internal/gerrit/core/client/GerritClient.java b/org.eclipse.mylyn.gerrit.core/src/org/eclipse/mylyn/internal/gerrit/core/client/GerritClient.java index 0daccc47b..c5b2ff8ed 100644 --- a/org.eclipse.mylyn.gerrit.core/src/org/eclipse/mylyn/internal/gerrit/core/client/GerritClient.java +++ b/org.eclipse.mylyn.gerrit.core/src/org/eclipse/mylyn/internal/gerrit/core/client/GerritClient.java @@ -117,7 +117,7 @@ import com.google.gwtjsonrpc.client.VoidResult; /** * Facade to the Gerrit RPC API. - * + * * @author Mikael Kober * @author Thomas Westling * @author Steffen Pingel @@ -276,16 +276,12 @@ public class GerritClient extends ReviewsClient { }); } - public VoidResult deleteDraft(Patch.Key patchkey, String message, int line, short side, String uuid, - IProgressMonitor monitor) throws GerritException { + public VoidResult deleteDraft(Patch.Key patchkey, String uuid, IProgressMonitor monitor) throws GerritException { final PatchLineComment.Key id = new PatchLineComment.Key(patchkey, uuid); - final PatchLineComment comment = new PatchLineComment(id, line, getAccount(monitor).getId(), uuid); - comment.setMessage(message); - comment.setSide(side); return execute(monitor, new Operation<VoidResult>() { @Override public void execute(IProgressMonitor monitor) throws GerritException { - getPatchDetailService(monitor).deleteDraft(comment.getKey(), this); + getPatchDetailService(monitor).deleteDraft(id, this); } }); } @@ -450,7 +446,7 @@ public class GerritClient extends ReviewsClient { /** * Checks for the 4 byte header that identifies a ZIP file - * + * * @noreference This method is not intended to be referenced by clients. */ public static boolean isZippedContent(byte[] bin) { @@ -950,7 +946,7 @@ public class GerritClient extends ReviewsClient { /** * Sends a query for the changes visible to the caller to the gerrit server. - * + * * @param monitor * A progress monitor * @param queryString @@ -966,7 +962,7 @@ public class GerritClient extends ReviewsClient { /** * Sends a query for the changes visible to the caller to the gerrit server with the possibility of adding options * to the query. - * + * * @param monitor * A progress monitor * @param queryString @@ -1010,7 +1006,7 @@ public class GerritClient extends ReviewsClient { /** * Sends a query for the changes visible to the caller to the gerrit server. Uses the gerrit REST API. - * + * * @param monitor * A progress monitor * @param queryString @@ -1026,7 +1022,7 @@ public class GerritClient extends ReviewsClient { /** * Sends a query for the changes visible to the caller to the gerrit server with the possibility of adding options * to the query. Uses the gerrit REST API. - * + * * @param monitor * A progress monitor * @param queryString diff --git a/org.eclipse.mylyn.gerrit.core/src/org/eclipse/mylyn/internal/gerrit/core/operations/DiscardDraftRequest.java b/org.eclipse.mylyn.gerrit.core/src/org/eclipse/mylyn/internal/gerrit/core/operations/DiscardDraftRequest.java index fd86bef2c..d4628282f 100644 --- a/org.eclipse.mylyn.gerrit.core/src/org/eclipse/mylyn/internal/gerrit/core/operations/DiscardDraftRequest.java +++ b/org.eclipse.mylyn.gerrit.core/src/org/eclipse/mylyn/internal/gerrit/core/operations/DiscardDraftRequest.java @@ -24,23 +24,13 @@ public class DiscardDraftRequest extends AbstractRequest<VoidResult> { private final Key patchKey; - private final int line; - private final String uuid; - private final short side; - - public DiscardDraftRequest(Patch.Key patchKey, int line, short side, String uuid) { + public DiscardDraftRequest(Patch.Key patchKey, String uuid) { this.patchKey = patchKey; - this.line = line; - this.side = side; this.uuid = uuid; } - public int getLine() { - return line; - } - public String getUuid() { return uuid; } @@ -49,13 +39,9 @@ public class DiscardDraftRequest extends AbstractRequest<VoidResult> { return patchKey; } - public short getSide() { - return side; - } - @Override protected VoidResult execute(GerritClient client, IProgressMonitor monitor) throws GerritException { - return client.deleteDraft(getPatchKey(), getMessage(), getLine(), getSide(), getUuid(), monitor); + return client.deleteDraft(getPatchKey(), getUuid(), monitor); } @Override diff --git a/org.eclipse.mylyn.gerrit.tests/src/org/eclipse/mylyn/internal/gerrit/core/remote/PatchSetRemoteFactoryTest.java b/org.eclipse.mylyn.gerrit.tests/src/org/eclipse/mylyn/internal/gerrit/core/remote/PatchSetRemoteFactoryTest.java index b6e44f1da..b6c687257 100644 --- a/org.eclipse.mylyn.gerrit.tests/src/org/eclipse/mylyn/internal/gerrit/core/remote/PatchSetRemoteFactoryTest.java +++ b/org.eclipse.mylyn.gerrit.tests/src/org/eclipse/mylyn/internal/gerrit/core/remote/PatchSetRemoteFactoryTest.java @@ -281,6 +281,39 @@ public class PatchSetRemoteFactoryTest extends GerritRemoteTest { assertThat(fileComment.getAuthor().getDisplayName(), is("tests")); assertThat(fileComment.getDescription(), is("Line 2 Comment")); + reviewHarness.client.deleteDraft(Patch.Key.parse(id), fileComment.getId(), new NullProgressMonitor()); + + commentFile = testPatchSet.getItems().get(0); + allComments = commentFile.getAllComments(); + assertThat(allComments.size(), is(0)); + + reviewHarness.client.saveDraft(Patch.Key.parse(id), "Line 2 Comment", 2, (short) 1, null, null, + new NullProgressMonitor()); + patchSetObserver.retrieve(false); + patchSetObserver.waitForResponse(); + + commentFile = testPatchSet.getItems().get(1); + allComments = commentFile.getAllComments(); + fileComment = allComments.get(0); + assertThat(fileComment, notNullValue()); + assertThat(fileComment.isDraft(), is(true)); + assertThat(fileComment.getAuthor().getDisplayName(), is("tests")); + assertThat(fileComment.getDescription(), is("Line 2 Comment")); + + reviewHarness.client.saveDraft(Patch.Key.parse(id), "Line 2 Comment modified", 2, (short) 1, null, + fileComment.getId(), new NullProgressMonitor()); + patchSetObserver.retrieve(false); + patchSetObserver.waitForResponse(); + + commentFile = testPatchSet.getItems().get(1); + allComments = commentFile.getAllComments(); + assertThat(allComments.size(), is(1)); + fileComment = allComments.get(0); + assertThat(fileComment, notNullValue()); + assertThat(fileComment.isDraft(), is(true)); + assertThat(fileComment.getAuthor().getDisplayName(), is("tests")); + assertThat(fileComment.getDescription(), is("Line 2 Comment modified")); + reviewHarness.client.publishComments(reviewHarness.shortId, 2, "Submit Comments", Collections.<ApprovalCategoryValue.Id> emptySet(), new NullProgressMonitor()); patchSetObserver.retrieve(false); @@ -291,7 +324,7 @@ public class PatchSetRemoteFactoryTest extends GerritRemoteTest { assertThat(fileComment, notNullValue()); assertThat(fileComment.isDraft(), is(false)); assertThat(fileComment.getAuthor().getDisplayName(), is("tests")); - assertThat(fileComment.getDescription(), is("Line 2 Comment")); + assertThat(fileComment.getDescription(), is("Line 2 Comment modified")); } @Test diff --git a/org.eclipse.mylyn.gerrit.ui/src/org/eclipse/mylyn/internal/gerrit/ui/GerritReviewBehavior.java b/org.eclipse.mylyn.gerrit.ui/src/org/eclipse/mylyn/internal/gerrit/ui/GerritReviewBehavior.java index 456d99a18..093be541f 100644 --- a/org.eclipse.mylyn.gerrit.ui/src/org/eclipse/mylyn/internal/gerrit/ui/GerritReviewBehavior.java +++ b/org.eclipse.mylyn.gerrit.ui/src/org/eclipse/mylyn/internal/gerrit/ui/GerritReviewBehavior.java @@ -108,8 +108,7 @@ public class GerritReviewBehavior extends ReviewBehavior { for (ILocation location : comment.getLocations()) { if (location instanceof ILineLocation) { ILineLocation lineLocation = (ILineLocation) location; - DiscardDraftRequest request = new DiscardDraftRequest(key, lineLocation.getRangeMin(), side, - comment.getId()); + DiscardDraftRequest request = new DiscardDraftRequest(key, comment.getId()); request.setMessage(comment.getDescription()); GerritOperation<VoidResult> operation = getOperationFactory().createOperation(getTask(), request); |