func TestChannelMemberStore(t *testing.T) { Setup() u1 := model.User{} u1.TeamId = model.NewId() u1.Email = model.NewId() u1.FullName = model.NewId() Must(store.User().Save(&u1)) u2 := model.User{} u2.TeamId = model.NewId() u2.Email = model.NewId() u2.FullName = model.NewId() Must(store.User().Save(&u2)) o1 := model.ChannelMember{} o1.ChannelId = model.NewId() o1.UserId = u1.Id o1.NotifyLevel = model.CHANNEL_NOTIFY_ALL Must(store.Channel().SaveMember(&o1)) o2 := model.ChannelMember{} o2.ChannelId = o1.ChannelId o2.UserId = u2.Id o2.NotifyLevel = model.CHANNEL_NOTIFY_ALL Must(store.Channel().SaveMember(&o2)) members := (<-store.Channel().GetMembers(o1.ChannelId)).Data.([]model.ChannelMember) if len(members) != 2 { t.Fatal("should have saved 2 members") } Must(store.Channel().RemoveMember(o2.ChannelId, o2.UserId)) members = (<-store.Channel().GetMembers(o1.ChannelId)).Data.([]model.ChannelMember) if len(members) != 1 { t.Fatal("should have removed 1 member") } member := (<-store.Channel().GetMember(o1.ChannelId, o1.UserId)).Data.(model.ChannelMember) if member.ChannelId != o1.ChannelId { t.Fatal("should have go member") } extraMembers := (<-store.Channel().GetExtraMembers(o1.ChannelId, 20)).Data.([]model.ExtraMember) if len(extraMembers) != 1 { t.Fatal("should have 1 extra members") } if err := (<-store.Channel().SaveMember(&o1)).Err; err == nil { t.Fatal("Should have been a duplicate") } }