Skip to content

Commit

Permalink
Merge pull request #2527 from AzureAD/yuki/e2e-parameter
Browse files Browse the repository at this point in the history
Native auth E2E test parameters change
  • Loading branch information
Yuki-YuXin authored Feb 24, 2025
2 parents b216b25 + 9c4d18e commit e17a6e5
Show file tree
Hide file tree
Showing 8 changed files with 189 additions and 83 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@

import Foundation
import XCTest
import MSAL

final class MSALNativeAuthUserAccountEndToEndTests: MSALNativeAuthEndToEndPasswordTestCase {

Expand All @@ -40,7 +41,10 @@ final class MSALNativeAuthUserAccountEndToEndTests: MSALNativeAuthEndToEndPasswo
let signInExpectation = expectation(description: "signing in")
let signInDelegateSpy = SignInPasswordStartDelegateSpy(expectation: signInExpectation)

sut.signIn(username: username, password: password, correlationId: correlationId, delegate: signInDelegateSpy)
let param = MSALNativeAuthSignInParameters(username: username)
param.password = password
param.correlationId = correlationId
sut.signIn(parameters: param, delegate: signInDelegateSpy)

await fulfillment(of: [signInExpectation])

Expand All @@ -52,7 +56,9 @@ final class MSALNativeAuthUserAccountEndToEndTests: MSALNativeAuthEndToEndPasswo
let refreshAccessTokenExpectation = expectation(description: "refreshing access token")
let credentialsDelegateSpy = CredentialsDelegateSpy(expectation: refreshAccessTokenExpectation)

signInDelegateSpy.result?.getAccessToken(forceRefresh: true, delegate: credentialsDelegateSpy)
let tokenParam = MSALNativeAuthGetAccessTokenParameters()
tokenParam.forceRefresh = true
signInDelegateSpy.result?.getAccessToken(parameters: tokenParam, delegate: credentialsDelegateSpy)

await fulfillment(of: [refreshAccessTokenExpectation])

Expand All @@ -75,7 +81,10 @@ final class MSALNativeAuthUserAccountEndToEndTests: MSALNativeAuthEndToEndPasswo
let signInExpectation = expectation(description: "signing in")
let signInDelegateSpy = SignInPasswordStartDelegateSpy(expectation: signInExpectation)

sut.signIn(username: username, password: password, correlationId: correlationId, delegate: signInDelegateSpy)
let signInParam = MSALNativeAuthSignInParameters(username: username)
signInParam.password = password
signInParam.correlationId = correlationId
sut.signIn(parameters: signInParam, delegate: signInDelegateSpy)

await fulfillment(of: [signInExpectation])

Expand All @@ -86,7 +95,10 @@ final class MSALNativeAuthUserAccountEndToEndTests: MSALNativeAuthEndToEndPasswo
let refreshAccessTokenExpectation = expectation(description: "refreshing access token")
let credentialsDelegateSpy = CredentialsDelegateSpy(expectation: refreshAccessTokenExpectation)

signInDelegateSpy.result?.getAccessToken(scopes: ["Calendar.Read"], forceRefresh: true, delegate: credentialsDelegateSpy)
let tokenParam = MSALNativeAuthGetAccessTokenParameters()
tokenParam.scopes = ["Calendar.Read"]
tokenParam.forceRefresh = true
signInDelegateSpy.result?.getAccessToken(parameters: tokenParam, delegate: credentialsDelegateSpy)

await fulfillment(of: [refreshAccessTokenExpectation])

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -323,8 +323,12 @@ final class MSALNativeAuthSignInWithMFAEndToEndTests: MSALNativeAuthEndToEndPass
}
let signInExpectation = expectation(description: "signing in")
let signInDelegateSpy = SignInPasswordStartDelegateSpy(expectation: signInExpectation)

let param = MSALNativeAuthSignInParameters(username: username)
param.password = password
param.correlationId = correlationId

application.signIn(username: username, password: password, correlationId: correlationId, delegate: signInDelegateSpy)
application.signIn(parameters: param, delegate: signInDelegateSpy)

await fulfillment(of: [signInExpectation])

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,8 @@ final class MSALNativeAuthResetPasswordEndToEndTests: MSALNativeAuthEndToEndBase
let codeRequiredExp = expectation(description: "code required")
let resetPasswordStartDelegate = ResetPasswordStartDelegateSpy(expectation: codeRequiredExp)

sut.resetPassword(username: username, delegate: resetPasswordStartDelegate)
let param = MSALNativeAuthResetPasswordParameters(username: username)
sut.resetPassword(parameters: param, delegate: resetPasswordStartDelegate)

await fulfillment(of: [codeRequiredExp])
XCTAssertTrue(resetPasswordStartDelegate.onResetPasswordCodeRequiredCalled)
Expand Down Expand Up @@ -282,7 +283,8 @@ final class MSALNativeAuthResetPasswordEndToEndTests: MSALNativeAuthEndToEndBase
let codeRequiredExp = expectation(description: "code required")
let resetPasswordStartDelegate = ResetPasswordStartDelegateSpy(expectation: codeRequiredExp)

sut.resetPassword(username: username, delegate: resetPasswordStartDelegate)
let param = MSALNativeAuthResetPasswordParameters(username: username)
sut.resetPassword(parameters: param, delegate: resetPasswordStartDelegate)

await fulfillment(of: [codeRequiredExp])
XCTAssertTrue(resetPasswordStartDelegate.onResetPasswordCodeRequiredCalled)
Expand Down Expand Up @@ -321,7 +323,8 @@ final class MSALNativeAuthResetPasswordEndToEndTests: MSALNativeAuthEndToEndBase
let signInAfterResetPasswordExp = expectation(description: "sign in after reset password")
let signInAfterResetPasswordDelegate = SignInAfterResetPasswordDelegateSpy(expectation: signInAfterResetPasswordExp)

resetPasswordRequiredDelegate.signInAfterResetPasswordState?.signIn(delegate: signInAfterResetPasswordDelegate)
let autoParam = MSALNativeAuthSignInAfterResetPasswordParameters()
resetPasswordRequiredDelegate.signInAfterResetPasswordState?.signIn(parameters: autoParam, delegate: signInAfterResetPasswordDelegate)

await fulfillment(of: [signInAfterResetPasswordExp])
XCTAssertTrue(signInAfterResetPasswordDelegate.onSignInCompletedCalled)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -58,8 +58,12 @@ final class MSALNativeAuthSignInUsernameAndPasswordEndToEndTests: MSALNativeAuth
let signInDelegateSpy = SignInPasswordStartDelegateSpy(expectation: signInExpectation)

let unknownUsername = UUID().uuidString + "@contoso.com"

let signInParam = MSALNativeAuthSignInParameters(username: unknownUsername)
signInParam.password = "testpass"
signInParam.correlationId = correlationId

sut.signIn(username: unknownUsername, password: "testpass", correlationId: correlationId, delegate: signInDelegateSpy)
sut.signIn(parameters: signInParam, delegate: signInDelegateSpy)

await fulfillment(of: [signInExpectation])

Expand Down Expand Up @@ -95,7 +99,11 @@ final class MSALNativeAuthSignInUsernameAndPasswordEndToEndTests: MSALNativeAuth
let signInExpectation = expectation(description: "signing in")
let signInDelegateSpy = SignInPasswordStartDelegateSpy(expectation: signInExpectation)

sut.signIn(username: username, password: password, correlationId: correlationId, delegate: signInDelegateSpy)
let signInParam = MSALNativeAuthSignInParameters(username: username)
signInParam.password = password
signInParam.correlationId = correlationId

sut.signIn(parameters: signInParam, delegate: signInDelegateSpy)

await fulfillment(of: [signInExpectation])

Expand Down Expand Up @@ -254,7 +262,10 @@ final class MSALNativeAuthSignInUsernameAndPasswordEndToEndTests: MSALNativeAuth
let signInDelegateSpy = SignInStartDelegateSpy(expectation: signInExpectation)
let signInPasswordRequiredDelegateSpy = SignInPasswordRequiredDelegateSpy(expectation: passwordRequiredExpectation)

sut.signIn(username: username, correlationId: correlationId, delegate: signInDelegateSpy)
let signInParam = MSALNativeAuthSignInParameters(username: username)
signInParam.correlationId = correlationId

sut.signIn(parameters: signInParam, delegate: signInDelegateSpy)

await fulfillment(of: [signInExpectation])

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@

import Foundation
import XCTest
import MSAL

final class MSALNativeAuthSignInUsernameEndToEndTests: MSALNativeAuthEndToEndBaseTestCase {
// Hero Scenario 2.2.1. Sign in - Use email and OTP to get token and sign in
Expand All @@ -38,7 +39,9 @@ final class MSALNativeAuthSignInUsernameEndToEndTests: MSALNativeAuthEndToEndBas
let signInExpectation = expectation(description: "signing in")
let signInDelegateSpy = SignInStartDelegateSpy(expectation: signInExpectation)

sut.signIn(username: username, correlationId: correlationId, delegate: signInDelegateSpy)
let param = MSALNativeAuthSignInParameters(username: username)
param.correlationId = correlationId
sut.signIn(parameters: param, delegate: signInDelegateSpy)

await fulfillment(of: [signInExpectation])

Expand Down Expand Up @@ -82,7 +85,9 @@ final class MSALNativeAuthSignInUsernameEndToEndTests: MSALNativeAuthEndToEndBas

let unknownUsername = UUID().uuidString + "@contoso.com"

sut.signIn(username: unknownUsername, correlationId: correlationId, delegate: signInDelegateSpy)
let param = MSALNativeAuthSignInParameters(username: unknownUsername)
param.correlationId = correlationId
sut.signIn(parameters: param, delegate: signInDelegateSpy)

await fulfillment(of: [signInExpectation])

Expand All @@ -102,7 +107,9 @@ final class MSALNativeAuthSignInUsernameEndToEndTests: MSALNativeAuthEndToEndBas
let signInExpectation = expectation(description: "signing in")
let signInDelegateSpy = SignInStartDelegateSpy(expectation: signInExpectation)

sut.signIn(username: username, correlationId: correlationId, delegate: signInDelegateSpy)
let param = MSALNativeAuthSignInParameters(username: username)
param.correlationId = correlationId
sut.signIn(parameters: param, delegate: signInDelegateSpy)

await fulfillment(of: [signInExpectation])

Expand All @@ -123,7 +130,9 @@ final class MSALNativeAuthSignInUsernameEndToEndTests: MSALNativeAuthEndToEndBas
let signInExpectation = expectation(description: "signing in")
let signInDelegate = SignInStartDelegateSpy(expectation: signInExpectation)

sut.signIn(username: username, correlationId: correlationId, delegate: signInDelegate)
let param = MSALNativeAuthSignInParameters(username: username)
param.correlationId = correlationId
sut.signIn(parameters: param, delegate: signInDelegate)

await fulfillment(of: [signInExpectation])

Expand Down Expand Up @@ -196,7 +205,9 @@ final class MSALNativeAuthSignInUsernameEndToEndTests: MSALNativeAuthEndToEndBas
let signInExpectation = expectation(description: "signing in")
let signInDelegateSpy = SignInStartDelegateSpy(expectation: signInExpectation)

sut.signIn(username: username, correlationId: correlationId, delegate: signInDelegateSpy)
let param = MSALNativeAuthSignInParameters(username: username)
param.correlationId = correlationId
sut.signIn(parameters: param, delegate: signInDelegateSpy)

await fulfillment(of: [signInExpectation])

Expand Down Expand Up @@ -233,7 +244,9 @@ final class MSALNativeAuthSignInUsernameEndToEndTests: MSALNativeAuthEndToEndBas
let signInExpectation = expectation(description: "signing in")
let signInDelegateSpy = SignInStartDelegateSpy(expectation: signInExpectation)

sut.signIn(username: username, correlationId: correlationId, delegate: signInDelegateSpy)
let param = MSALNativeAuthSignInParameters(username: username)
param.correlationId = correlationId
sut.signIn(parameters: param, delegate: signInDelegateSpy)

await fulfillment(of: [signInExpectation])

Expand Down Expand Up @@ -277,7 +290,9 @@ final class MSALNativeAuthSignInUsernameEndToEndTests: MSALNativeAuthEndToEndBas
let signInExpectation = expectation(description: "signing in")
let signInDelegateSpy = SignInStartDelegateSpy(expectation: signInExpectation)

sut.signIn(username: username, correlationId: correlationId, delegate: signInDelegateSpy)
let param = MSALNativeAuthSignInParameters(username: username)
param.correlationId = correlationId
sut.signIn(parameters: param, delegate: signInDelegateSpy)

await fulfillment(of: [signInExpectation])

Expand Down Expand Up @@ -321,7 +336,9 @@ final class MSALNativeAuthSignInUsernameEndToEndTests: MSALNativeAuthEndToEndBas
let signInExpectation = expectation(description: "signing in")
let signInDelegateSpy = SignInStartDelegateSpy(expectation: signInExpectation)

sut.signIn(username: username, correlationId: correlationId, delegate: signInDelegateSpy)
let signInParam = MSALNativeAuthSignInParameters(username: username)
signInParam.correlationId = correlationId
sut.signIn(parameters: signInParam, delegate: signInDelegateSpy)

await fulfillment(of: [signInExpectation])

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@

import Foundation
import XCTest
import MSAL

final class MSALNativeAuthSignOutEndToEndTests: MSALNativeAuthEndToEndPasswordTestCase {
// Hero Scenario 2.4.1. Sign out – Local sign out from app on device (no SSO)
Expand All @@ -43,7 +44,10 @@ final class MSALNativeAuthSignOutEndToEndTests: MSALNativeAuthEndToEndPasswordTe
let signInExpectation = expectation(description: "signing in")
let signInDelegateSpy = SignInPasswordStartDelegateSpy(expectation: signInExpectation)

sut.signIn(username: username, password: password, correlationId: correlationId, delegate: signInDelegateSpy)
let param = MSALNativeAuthSignInParameters(username: username)
param.password = password
param.correlationId = correlationId
sut.signIn(parameters: param, delegate: signInDelegateSpy)

await fulfillment(of: [signInExpectation])

Expand Down
Loading

0 comments on commit e17a6e5

Please sign in to comment.