diff options
Diffstat (limited to 'store/sql_channel_store_test.go')
-rw-r--r-- | store/sql_channel_store_test.go | 34 |
1 files changed, 32 insertions, 2 deletions
diff --git a/store/sql_channel_store_test.go b/store/sql_channel_store_test.go index ae29bc2b3..b14883843 100644 --- a/store/sql_channel_store_test.go +++ b/store/sql_channel_store_test.go @@ -197,6 +197,16 @@ func TestChannelStoreGetByName(t *testing.T) { func TestChannelMemberStore(t *testing.T) { Setup() + c1 := model.Channel{} + c1.TeamId = model.NewId() + c1.DisplayName = "NameName" + c1.Name = "a" + model.NewId() + "b" + c1.Type = model.CHANNEL_OPEN + c1 = *Must(store.Channel().Save(&c1)).(*model.Channel) + + c1t1 := (<-store.Channel().Get(c1.Id)).Data.(*model.Channel) + t1 := c1t1.ExtraUpdateAt + u1 := model.User{} u1.TeamId = model.NewId() u1.Email = model.NewId() @@ -210,17 +220,24 @@ func TestChannelMemberStore(t *testing.T) { Must(store.User().Save(&u2)) o1 := model.ChannelMember{} - o1.ChannelId = model.NewId() + o1.ChannelId = c1.Id o1.UserId = u1.Id o1.NotifyLevel = model.CHANNEL_NOTIFY_ALL Must(store.Channel().SaveMember(&o1)) o2 := model.ChannelMember{} - o2.ChannelId = o1.ChannelId + o2.ChannelId = c1.Id o2.UserId = u2.Id o2.NotifyLevel = model.CHANNEL_NOTIFY_ALL Must(store.Channel().SaveMember(&o2)) + c1t2 := (<-store.Channel().Get(c1.Id)).Data.(*model.Channel) + t2 := c1t2.ExtraUpdateAt + + if t2 <= t1 { + t.Fatal("Member update time incorrect") + } + members := (<-store.Channel().GetMembers(o1.ChannelId)).Data.([]model.ChannelMember) if len(members) != 2 { t.Fatal("should have saved 2 members") @@ -233,6 +250,13 @@ func TestChannelMemberStore(t *testing.T) { t.Fatal("should have removed 1 member") } + c1t3 := (<-store.Channel().Get(c1.Id)).Data.(*model.Channel) + t3 := c1t3.ExtraUpdateAt + + if t3 <= t2 || t3 <= t1 { + t.Fatal("Member update time incorrect on delete") + } + member := (<-store.Channel().GetMember(o1.ChannelId, o1.UserId)).Data.(model.ChannelMember) if member.ChannelId != o1.ChannelId { t.Fatal("should have go member") @@ -246,6 +270,12 @@ func TestChannelMemberStore(t *testing.T) { if err := (<-store.Channel().SaveMember(&o1)).Err; err == nil { t.Fatal("Should have been a duplicate") } + + c1t4 := (<-store.Channel().Get(c1.Id)).Data.(*model.Channel) + t4 := c1t4.ExtraUpdateAt + if t4 != t3 { + t.Fatal("Should not update time upon failure") + } } func TestChannelStorePermissionsTo(t *testing.T) { |