diff options
Diffstat (limited to 'store/sql_recovery_store_test.go')
-rw-r--r-- | store/sql_recovery_store_test.go | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/store/sql_recovery_store_test.go b/store/sql_recovery_store_test.go new file mode 100644 index 000000000..cf1048482 --- /dev/null +++ b/store/sql_recovery_store_test.go @@ -0,0 +1,54 @@ +// Copyright (c) 2015 Mattermost, Inc. All Rights Reserved. +// See License.txt for license information. + +package store + +import ( + "github.com/mattermost/platform/model" + "testing" +) + +func TestSqlPasswordRecoveryGet(t *testing.T) { + Setup() + + recovery := &model.PasswordRecovery{UserId: "12345678901234567890123456"} + Must(store.PasswordRecovery().SaveOrUpdate(recovery)) + + result := <-store.PasswordRecovery().Get(recovery.UserId) + rrecovery := result.Data.(*model.PasswordRecovery) + if rrecovery.Code != recovery.Code { + t.Fatal("codes didn't match") + } + + result2 := <-store.PasswordRecovery().GetByCode(recovery.Code) + rrecovery2 := result2.Data.(*model.PasswordRecovery) + if rrecovery2.Code != recovery.Code { + t.Fatal("codes didn't match") + } +} + +func TestSqlPasswordRecoverySaveOrUpdate(t *testing.T) { + Setup() + + recovery := &model.PasswordRecovery{UserId: "12345678901234567890123456"} + + if err := (<-store.PasswordRecovery().SaveOrUpdate(recovery)).Err; err != nil { + t.Fatal(err) + } + + // not duplicate, testing update + if err := (<-store.PasswordRecovery().SaveOrUpdate(recovery)).Err; err != nil { + t.Fatal(err) + } +} + +func TestSqlPasswordRecoveryDelete(t *testing.T) { + Setup() + + recovery := &model.PasswordRecovery{UserId: "12345678901234567890123456"} + Must(store.PasswordRecovery().SaveOrUpdate(recovery)) + + if err := (<-store.PasswordRecovery().Delete(recovery.UserId)).Err; err != nil { + t.Fatal(err) + } +} |