From 997df03ac1455785b7a39e40edcd67b3b3e86f9e Mon Sep 17 00:00:00 2001 From: Daniel Schalla Date: Tue, 17 Apr 2018 14:20:47 +0200 Subject: Initial Commit of Ephemeral Message Support for System Admins (#8611) Fixed Permission Test Fixed and extended ephemeral message tests; Removed Online/Activity Updates Set Create Time to current time gofmt --- api4/post_test.go | 41 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) (limited to 'api4/post_test.go') diff --git a/api4/post_test.go b/api4/post_test.go index 1b682e38b..63d71b5bd 100644 --- a/api4/post_test.go +++ b/api4/post_test.go @@ -116,6 +116,47 @@ func TestCreatePost(t *testing.T) { } } +func TestCreatePostEphemeral(t *testing.T) { + th := Setup().InitBasic().InitSystemAdmin() + defer th.TearDown() + Client := th.SystemAdminClient + + ephemeralPost := &model.PostEphemeral{ + UserID: th.BasicUser2.Id, + Post: &model.Post{ChannelId: th.BasicChannel.Id, Message: "a" + model.NewId() + "a", Props: model.StringInterface{model.PROPS_ADD_CHANNEL_MEMBER: "no good"}}, + } + + rpost, resp := Client.CreatePostEphemeral(ephemeralPost) + CheckNoError(t, resp) + CheckCreatedStatus(t, resp) + + if rpost.Message != ephemeralPost.Post.Message { + t.Fatal("message didn't match") + } + + if rpost.EditAt != 0 { + t.Fatal("newly created ephemeral post shouldn't have EditAt set") + } + + if r, err := Client.DoApiPost("/posts/ephemeral", "garbage"); err == nil { + t.Fatal("should have errored") + } else { + if r.StatusCode != http.StatusBadRequest { + t.Log("actual: " + strconv.Itoa(r.StatusCode)) + t.Log("expected: " + strconv.Itoa(http.StatusBadRequest)) + t.Fatal("wrong status code") + } + } + + Client.Logout() + _, resp = Client.CreatePostEphemeral(ephemeralPost) + CheckUnauthorizedStatus(t, resp) + + Client = th.Client + rpost, resp = Client.CreatePostEphemeral(ephemeralPost) + CheckForbiddenStatus(t, resp) +} + func testCreatePostWithOutgoingHook( t *testing.T, hookContentType, expectedContentType, message, triggerWord string, -- cgit v1.2.3-1-g7c22