add getComment and deleteComment
All checks were successful
continuous-integration/drone/push Build is passing

This commit is contained in:
Raffaele Mignone 2019-11-12 21:39:38 +01:00
parent 726a4b6a07
commit 7429e2cbc7
Signed by: norangebit
GPG Key ID: F5255658CB220573
3 changed files with 75 additions and 13 deletions

View File

@ -38,4 +38,33 @@ public interface CardCommentService {
@Field("authorId") String authorId,
@Field("comment") String comment
);
/**
* Get a comment attached to a card.
*
* @param boardId The ID of the board
* @param cardId The ID of the card
* @param commentId The ID of the comment
* @return The comment
*/
@GET("/api/boards/{boardId}/cards/{cardId}/comments/{commentId}")
Call<Comment> getComment(
@Path("boardId") String boardId,
@Path("cardId") String cardId,
@Path("commentId") String commentId
);
/**
* Delete a comment attached to a card.
*
* @param boardId The ID of the board
* @param cardId The ID of the card
* @param commentId The ID of the comment
*/
@DELETE("/api/boards/{boardId}/cards/{cardId}/comments/{commentId}")
Call<Void> deleteComment(
@Path("boardId") String boardId,
@Path("cardId") String cardId,
@Path("commentId") String commentId
);
}

View File

@ -2,11 +2,17 @@ package wekan.wrapper.entity;
import com.google.gson.annotations.SerializedName;
import java.util.Date;
public class Comment {
@SerializedName("_id")
private String id;
private String comment;
private String authorId;
private String boardId;
private String cardId;
private Date createdAt;
private Date modifiedAt;
public String getId() {
return id;
@ -26,6 +32,10 @@ public class Comment {
"id='" + id + '\'' +
", comment='" + comment + '\'' +
", authorId='" + authorId + '\'' +
", boardId='" + boardId + '\'' +
", cardId='" + cardId + '\'' +
", createdAt=" + createdAt +
", modifiedAt=" + modifiedAt +
'}';
}
}

View File

@ -7,9 +7,7 @@ import org.junit.Before;
import org.junit.Test;
import retrofit2.Retrofit;
import retrofit2.converter.gson.GsonConverterFactory;
import wekan.wrapper.entity.Color;
import wekan.wrapper.entity.Comment;
import wekan.wrapper.entity.Swimlane;
import java.io.IOException;
import java.net.HttpURLConnection;
@ -89,6 +87,27 @@ public class CardCommentServiceTest {
}
}
@Test
public void getComment() {
MockResponse response = new MockResponse()
.setResponseCode(HttpURLConnection.HTTP_OK)
.setBody(COMMENT_3);
mockWebServer.enqueue(response);
try {
Comment comment = service.getComment(
"board id",
"card id",
"comment id"
).execute().body();
assertNotNull(comment);
} catch (IOException e) {
e.printStackTrace();
}
}
private final static String COMMENT_1 = "{" +
"\"_id\":\"zwzAgjHdW4fNJ9YLc\"," +
"\"comment\":\"comment 1\"," +
@ -100,8 +119,12 @@ public class CardCommentServiceTest {
"\"authorId\":\"Si69gNgkJfQuk6uiJ\"" +
"}";
private final static String COMMENT_3 = "{" +
"\"_id\":\"zwzAgjHdW4fNJ9YLf\"," +
"\"comment\":\"comment 3\"," +
"\"authorId\":\"Si69gNgkJfQuk6uiJ\"" +
"\"_id\":\"DofhD9v96DbX7Wirp\"," +
"\"userId\":\"Si69gNgkJfQuk6uiJ\"," +
"\"text\":\"commento api\"," +
"\"cardId\":\"XQtnuqWEJnEcm6iy2\"," +
"\"boardId\":\"TtjXrJyvPkG3xsbkw\"," +
"\"createdAt\":\"2019-11-12T20:12:55.749Z\"," +
"\"modifiedAt\":\"2019-11-12T20:12:55.749Z\"" +
"}";
}