spark-server/internal/module/auth/logic/login_test_helpers.go

41 lines
1.1 KiB
Go

package logic
import (
"context"
deviceentity "spark-server/internal/module/device/entity"
devicelogic "spark-server/internal/module/device/logic"
devicemodel "spark-server/internal/module/device/model"
)
var (
testIOSDeviceID = mustTestDeviceID(deviceentity.TypeIOS, "00000000-0000-0000-0000-000000000007", "")
testAndroidDeviceID = mustTestDeviceID(deviceentity.TypeAndroid, "", "spark-test-android-9")
)
const testAppID uint8 = 1
func mustTestDeviceID(dtype deviceentity.DeviceType, idfv, androidID string) uint64 {
id, _, err := devicelogic.DeviceIDFromFingerprint(devicelogic.FingerprintInput{
DeviceType: dtype, IDFV: idfv, AndroidID: androidID,
})
if err != nil || id == 0 {
panic(err)
}
return id
}
func testLoginService(j *JWT, users Verifier) *LoginService {
reg := devicemodel.NewMemoryRegistry()
devices := devicelogic.NewService(reg)
svc := NewLoginService(j, users)
svc.Devices = devices
return svc
}
type fixedDeviceRegistrar struct{ id uint64 }
func (f fixedDeviceRegistrar) Register(_ context.Context, _ devicelogic.RegisterInput) (uint64, error) {
return f.id, nil
}