[PLT-7364] Ability to Direct Message yourself (#7696)

* [PLT-7364] Ability to Direct Message yourself

* [PLT-7364] add tests
This commit is contained in:
Carlos Tadeu Panato Junior
2017-10-26 09:45:26 -04:00
committed by Joram Wilander
parent 71be37d28f
commit ab7e5b35d8
2 changed files with 19 additions and 1 deletions
+4 -1
View File
@@ -162,7 +162,10 @@ func (s SqlChannelStore) SaveDirectChannel(directchannel *model.Channel, member1
member2.ChannelId = newChannel.Id
member1Result := s.saveMemberT(transaction, member1, newChannel)
member2Result := s.saveMemberT(transaction, member2, newChannel)
member2Result := member1Result
if member1.UserId != member2.UserId {
member2Result = s.saveMemberT(transaction, member2, newChannel)
}
if member1Result.Err != nil || member2Result.Err != nil {
transaction.Rollback()
+15
View File
@@ -146,6 +146,21 @@ func testChannelStoreSaveDirectChannel(t *testing.T, ss store.Store) {
if err := (<-ss.Channel().SaveDirectChannel(&o1, &m1, &m2)).Err; err == nil {
t.Fatal("Should not be able to save non-direct channel")
}
// Save yourself Direct Message
o1.Id = ""
o1.DisplayName = "Myself"
o1.Name = "zz" + model.NewId() + "b"
o1.Type = model.CHANNEL_DIRECT
if err := (<-ss.Channel().SaveDirectChannel(&o1, &m1, &m1)).Err; err != nil {
t.Fatal("couldn't save direct channel", err)
}
members = (<-ss.Channel().GetMembers(o1.Id, 0, 100)).Data.(*model.ChannelMembers)
if len(*members) != 1 {
t.Fatal("should have saved just 1 member")
}
}
func testChannelStoreCreateDirectChannel(t *testing.T, ss store.Store) {