public async Task SignInAsync_WithRedirect_CallsSignInRedirect() { var js = new Mock <IJSRuntime>(); var navigation = new TestNavigationManager(); IMsalConfig config = new TestConfig() { LoginMode = LoginModes.Redirect }; var configurator = new Mock <IConfigProvider <IMsalConfig> >(); configurator .Setup(x => x.GetConfigurationAsync()) .Returns(Task.FromResult(config)); var msal = new Msal(js.Object, navigation, configurator.Object); var scopes = new string[0]; await msal.SignInAsync(scopes); js.Verify(j => j.InvokeAsync <object>("azuread.signInRedirect", It.Is <object[]>(objs => objs[0] == scopes))); Assert.True(msal.IsInitialized); }
public async Task AcquireTokenAsync_WithPopup_CallsAcquireTokenPopup() { var token = new MsalToken(); var js = new Mock <IJSRuntime>(); js.Setup(j => j.InvokeAsync <MsalToken>(It.IsAny <string>(), It.IsAny <object[]>())) .Returns(new ValueTask <MsalToken>(Task.FromResult(token))); var navigation = new TestNavigationManager(); IMsalConfig config = new TestConfig() { LoginMode = LoginModes.Popup }; var configurator = new Mock <IConfigProvider <IMsalConfig> >(); configurator .Setup(x => x.GetConfigurationAsync()) .Returns(Task.FromResult(config)); var msal = new Msal(js.Object, navigation, configurator.Object); var scopes = new string[0]; var result = await msal.AcquireTokenAsync(scopes); js.Verify(j => j.InvokeAsync <object>("azuread.acquireTokenPopup", It.Is <object[]>(objs => objs[0] == scopes))); Assert.Same(token, result); Assert.True(msal.IsInitialized); }
public async Task GetAccountAsync_CallsGetAccount_ReturnsAccount() { var account = new MsalAccount(); var js = new Mock <IJSRuntime>(); js.Setup(j => j.InvokeAsync <MsalAccount>(It.IsAny <string>(), It.IsAny <object[]>())) .Returns(new ValueTask <MsalAccount>(Task.FromResult(account))); var navigation = new TestNavigationManager(); IMsalConfig config = new TestConfig(); var configurator = new Mock <IConfigProvider <IMsalConfig> >(); configurator .Setup(x => x.GetConfigurationAsync()) .Returns(Task.FromResult(config)); var msal = new Msal(js.Object, navigation, configurator.Object); var result = await msal.GetAccountAsync(); js.Verify(j => j.InvokeAsync <object>("azuread.getAccount", It.IsAny <object[]>())); Assert.Same(account, result); Assert.True(msal.IsInitialized); }
public void WhenNotInitialized_IsInitialized_ReturnsFalse() { var js = new Mock <IJSRuntime>(); var navigation = new Mock <NavigationManager>(); var configurator = new Mock <IConfigProvider <IMsalConfig> >(); var msal = new Msal(js.Object, navigation.Object, configurator.Object); Assert.False(msal.IsInitialized); }
public async Task SignOutAsync_CallsSignOut() { var js = new Mock <IJSRuntime>(); var navigation = new TestNavigationManager(); IMsalConfig config = new TestConfig(); var configurator = new Mock <IConfigProvider <IMsalConfig> >(); configurator .Setup(x => x.GetConfigurationAsync()) .Returns(Task.FromResult(config)); var msal = new Msal(js.Object, navigation, configurator.Object); await msal.SignOutAsync(); js.Verify(j => j.InvokeAsync <object>("azuread.signOut", It.IsAny <object[]>())); Assert.True(msal.IsInitialized); }