diff --git a/json-logs/samples/api/conversations.info.json b/json-logs/samples/api/conversations.info.json index 86f951101..4f622a804 100644 --- a/json-logs/samples/api/conversations.info.json +++ b/json-logs/samples/api/conversations.info.json @@ -47,6 +47,7 @@ "is_read_only": false, "is_thread_only": false, "is_non_threadable": false, + "is_file": false, "internal_team_ids": [ "T00000000" ], diff --git a/json-logs/samples/api/conversations.list.json b/json-logs/samples/api/conversations.list.json index 9248fac2f..0eaa6b35d 100644 --- a/json-logs/samples/api/conversations.list.json +++ b/json-logs/samples/api/conversations.list.json @@ -16,6 +16,7 @@ "is_mpim": false, "is_private": false, "is_general": false, + "is_file": false, "unlinked": 12345, "name_normalized": "", "is_shared": false, diff --git a/slack-api-client/src/test/java/test_locally/api/model/ConversationTest.java b/slack-api-client/src/test/java/test_locally/api/model/ConversationTest.java index 2b6ade941..b5bebd52d 100644 --- a/slack-api-client/src/test/java/test_locally/api/model/ConversationTest.java +++ b/slack-api-client/src/test/java/test_locally/api/model/ConversationTest.java @@ -2,8 +2,12 @@ import com.slack.api.methods.response.conversations.ConversationsInfoResponse; import com.slack.api.methods.response.conversations.ConversationsListResponse; +import com.slack.api.util.json.GsonFactory; import org.junit.Test; +import static org.hamcrest.CoreMatchers.is; +import static org.hamcrest.MatcherAssert.assertThat; + public class ConversationTest implements Verifier { @Test @@ -16,4 +20,12 @@ public void parseConversationsListResponse() throws Exception { verifyParsing("conversations.list", ConversationsListResponse.class); } + @Test + public void parseFileConversation() { + String json = "{\"ok\":true,\"channel\":{\"id\":\"C0123456789\",\"is_channel\":true,\"is_private\":true," + + "\"is_file\":true,\"is_thread_only\":true,\"name_normalized\":\"FC:F0123456789:Project notes\"}}"; + ConversationsInfoResponse resp = GsonFactory.createSnakeCase().fromJson(json, ConversationsInfoResponse.class); + assertThat(resp.getChannel().isFile(), is(true)); + } + } diff --git a/slack-api-model/src/main/java/com/slack/api/model/Conversation.java b/slack-api-model/src/main/java/com/slack/api/model/Conversation.java index 0150802c1..965a7db50 100644 --- a/slack-api-model/src/main/java/com/slack/api/model/Conversation.java +++ b/slack-api-model/src/main/java/com/slack/api/model/Conversation.java @@ -82,6 +82,8 @@ public class Conversation { private boolean isThreadOnly; @SerializedName("is_non_threadable") private boolean isNonThreadable; + @SerializedName("is_file") + private boolean isFile; @SerializedName("is_shared") private boolean isShared; @SerializedName("is_ext_shared")