|
1 | 1 | package test |
2 | 2 |
|
3 | 3 | import ( |
| 4 | + "fmt" |
| 5 | + "strings" |
4 | 6 | "testing" |
| 7 | + "time" |
5 | 8 |
|
| 9 | + "github.com/authorizerdev/authorizer/server/constants" |
6 | 10 | "github.com/authorizerdev/authorizer/server/db" |
7 | 11 | "github.com/authorizerdev/authorizer/server/graph/model" |
| 12 | + "github.com/authorizerdev/authorizer/server/memorystore" |
8 | 13 | "github.com/authorizerdev/authorizer/server/refs" |
9 | 14 | "github.com/authorizerdev/authorizer/server/resolvers" |
| 15 | + "github.com/google/uuid" |
10 | 16 | "github.com/stretchr/testify/assert" |
11 | 17 | ) |
12 | 18 |
|
@@ -48,6 +54,17 @@ func mobileLoginTests(t *testing.T, s TestSetup) { |
48 | 54 | smsRequest, err := db.Provider.GetOTPByPhoneNumber(ctx, phoneNumber) |
49 | 55 | assert.NoError(t, err) |
50 | 56 | assert.NotEmpty(t, smsRequest.Otp) |
| 57 | + // Get user by phone number |
| 58 | + user, err := db.Provider.GetUserByPhoneNumber(ctx, phoneNumber) |
| 59 | + assert.NoError(t, err) |
| 60 | + assert.NotNil(t, user) |
| 61 | + // Set mfa cookie session |
| 62 | + mfaSession := uuid.NewString() |
| 63 | + memorystore.Provider.SetMfaSession(user.ID, mfaSession, time.Now().Add(1*time.Minute).Unix()) |
| 64 | + cookie := fmt.Sprintf("%s=%s;", constants.MfaCookieName+"_session", mfaSession) |
| 65 | + cookie = strings.TrimSuffix(cookie, ";") |
| 66 | + req, ctx := createContext(s) |
| 67 | + req.Header.Set("Cookie", cookie) |
51 | 68 | verifySMSRequest, err := resolvers.VerifyOtpResolver(ctx, model.VerifyOTPRequest{ |
52 | 69 | PhoneNumber: &phoneNumber, |
53 | 70 | Otp: smsRequest.Otp, |
|
0 commit comments