diff options
author | Harrison Healey <harrisonmhealey@gmail.com> | 2016-12-09 18:43:03 -0500 |
---|---|---|
committer | Corey Hulen <corey@hulen.com> | 2016-12-09 15:43:03 -0800 |
commit | aaa41535f8ac9656d0cd399aeedf58de9b374b65 (patch) | |
tree | 34d15671bf4b6f50fdb96a0fe1f1967885d87931 /api/channel_test.go | |
parent | 9670afed82e6c3192d230f107b836e21bb0c01a6 (diff) | |
download | chat-aaa41535f8ac9656d0cd399aeedf58de9b374b65.tar.gz chat-aaa41535f8ac9656d0cd399aeedf58de9b374b65.tar.bz2 chat-aaa41535f8ac9656d0cd399aeedf58de9b374b65.zip |
PLT-3736 Fixed duplicated create_direct api calls not returning the existing channel (#4745)
* Fixed duplicated create_direct api calls not returning the existing channel
* Added unit tests for duplicated create_direct api calls
Diffstat (limited to 'api/channel_test.go')
-rw-r--r-- | api/channel_test.go | 17 |
1 files changed, 10 insertions, 7 deletions
diff --git a/api/channel_test.go b/api/channel_test.go index 611fa9339..5b44b6ab0 100644 --- a/api/channel_test.go +++ b/api/channel_test.go @@ -170,9 +170,11 @@ func TestCreateDirectChannel(t *testing.T) { user := th.BasicUser user2 := th.BasicUser2 - rchannel, err := Client.CreateDirectChannel(th.BasicUser2.Id) - if err != nil { + var channel *model.Channel + if result, err := Client.CreateDirectChannel(th.BasicUser2.Id); err != nil { t.Fatal(err) + } else { + channel = result.Data.(*model.Channel) } channelName := "" @@ -182,17 +184,19 @@ func TestCreateDirectChannel(t *testing.T) { channelName = user2.Id + "__" + user.Id } - if rchannel.Data.(*model.Channel).Name != channelName { + if channel.Name != channelName { t.Fatal("channel name didn't match") } - if rchannel.Data.(*model.Channel).Type != model.CHANNEL_DIRECT { + if channel.Type != model.CHANNEL_DIRECT { t.Fatal("channel type was not direct") } - // don't fail on direct channels already existing - if _, err := Client.CreateDirectChannel(th.BasicUser2.Id); err != nil { + // Don't fail on direct channels already existing and return the original channel again + if result, err := Client.CreateDirectChannel(th.BasicUser2.Id); err != nil { t.Fatal(err) + } else if result.Data.(*model.Channel).Id != channel.Id { + t.Fatal("didn't return original direct channel when saving a duplicate") } if _, err := Client.CreateDirectChannel("junk"); err == nil { @@ -202,7 +206,6 @@ func TestCreateDirectChannel(t *testing.T) { if _, err := Client.CreateDirectChannel("12345678901234567890123456"); err == nil { t.Fatal("should have failed with non-existent user") } - } func TestUpdateChannel(t *testing.T) { |