feat: complete registration invitation and auth redesign
This commit is contained in:
@@ -0,0 +1,68 @@
|
||||
package main
|
||||
|
||||
import (
|
||||
"time"
|
||||
|
||||
"github.com/tinode/chat/server/store/types"
|
||||
)
|
||||
|
||||
type testRegistrationInviteStore struct {
|
||||
invite *types.RegistrationInviteCode
|
||||
created *types.RegistrationInviteCode
|
||||
page *types.RegistrationInvitePage
|
||||
batch *types.RegistrationInviteBatch
|
||||
err error
|
||||
useRecorded bool
|
||||
syncedCode int64
|
||||
}
|
||||
|
||||
func (s *testRegistrationInviteStore) Create(_ types.TenantID, code *types.RegistrationInviteCode) error {
|
||||
s.created = code
|
||||
return s.err
|
||||
}
|
||||
func (s *testRegistrationInviteStore) CreateBatch(types.TenantID, *types.RegistrationInviteBatch, []types.RegistrationInviteCode) error {
|
||||
return s.err
|
||||
}
|
||||
func (s *testRegistrationInviteStore) GetByCode(types.TenantID, string) (*types.RegistrationInviteCode, error) {
|
||||
return s.invite, s.err
|
||||
}
|
||||
func (s *testRegistrationInviteStore) List(types.TenantID, types.RegistrationInviteListOptions) (*types.RegistrationInvitePage, error) {
|
||||
return s.page, s.err
|
||||
}
|
||||
func (s *testRegistrationInviteStore) GetBatch(types.TenantID, int64) (*types.RegistrationInviteBatch, error) {
|
||||
return s.batch, s.err
|
||||
}
|
||||
func (s *testRegistrationInviteStore) GetBatchByIdempotency(types.TenantID, string) (*types.RegistrationInviteBatch, error) {
|
||||
return s.batch, s.err
|
||||
}
|
||||
func (s *testRegistrationInviteStore) Revoke(types.TenantID, int64, time.Time) error { return s.err }
|
||||
func (s *testRegistrationInviteStore) RevokeBatch(types.TenantID, int64, time.Time) (int, error) {
|
||||
return 0, s.err
|
||||
}
|
||||
func (s *testRegistrationInviteStore) RecordUse(types.TenantID, string, types.Uid, string, time.Time) error {
|
||||
s.useRecorded = true
|
||||
return s.err
|
||||
}
|
||||
|
||||
func (s *testRegistrationInviteStore) SyncUsage(_ types.TenantID, codeID int64) error {
|
||||
s.syncedCode = codeID
|
||||
return s.err
|
||||
}
|
||||
|
||||
func setRegistrationSMSConfigForTest(enabled bool) {
|
||||
registrationSMSConfigCache.Lock()
|
||||
defer registrationSMSConfigCache.Unlock()
|
||||
registrationSMSConfigCache.value = false
|
||||
registrationSMSConfigCache.loaded = false
|
||||
registrationSMSConfigCache.loadedAt = time.Time{}
|
||||
registrationSMSConfigCache.loadValue = func() (bool, error) { return enabled, nil }
|
||||
}
|
||||
|
||||
func resetRegistrationSMSConfigForTest() {
|
||||
registrationSMSConfigCache.Lock()
|
||||
defer registrationSMSConfigCache.Unlock()
|
||||
registrationSMSConfigCache.value = false
|
||||
registrationSMSConfigCache.loaded = false
|
||||
registrationSMSConfigCache.loadedAt = time.Time{}
|
||||
registrationSMSConfigCache.loadValue = nil
|
||||
}
|
||||
Reference in New Issue
Block a user