public void LoginBySubscriptionTenant() { string tenantA = Guid.NewGuid().ToString(), tenantB = Guid.NewGuid().ToString(); string subscriptionA = Guid.NewGuid().ToString() , subscriptionB = Guid.NewGuid().ToString() , subscriptionC = Guid.NewGuid().ToString() , subscriptionD = Guid.NewGuid().ToString(); var clientFactory = new MockSubscriptionClientFactory(); Dictionary <string, string> subscriptionListA = GetFirstTenantSubscriptionsJson(tenantA, subscriptionA, subscriptionB, subscriptionC, tenantB); subscriptionClients.Clear(); subscriptionClients.Enqueue(clientFactory.GetSubscriptionClientVer2019( null , MockSubscriptionClientFactory.CreateSubscripitonsFromJson(subscriptionListA[subscriptionB]) , null )); var mock = new AccountMockClientFactory(() => { return(subscriptionClients.Peek()); }, true); mock.MoqClients = true; AzureSession.Instance.ClientFactory = mock; var client = GetProfileClient(); var azureRmProfile = client.Login( Context.Account, Context.Environment, tenantA, subscriptionB, null, null, false, null); Assert.Equal("2019-06-01", client.SubscriptionAndTenantClient.ApiVersion); Assert.Equal(tenantA, azureRmProfile.DefaultContext.Tenant.Id.ToString()); Assert.Equal(subscriptionB, azureRmProfile.DefaultContext.Subscription.Id.ToString()); }
public void LoginByTenantSubscriptionNotExist() { string tenantA = Guid.NewGuid().ToString(), tenantB = Guid.NewGuid().ToString(); string subscriptionA = Guid.NewGuid().ToString() , subscriptionB = Guid.NewGuid().ToString() , subscriptionC = Guid.NewGuid().ToString() , subscriptionD = Guid.NewGuid().ToString(); var clientFactory = new MockSubscriptionClientFactory(); Dictionary <string, string> subscriptionListA = GetFirstTenantSubscriptionsJson(tenantA, subscriptionA, subscriptionB, subscriptionC, tenantB); Dictionary <string, string> subscriptionListB = GetSecondTenantSubscriptionsJson(tenantB, subscriptionA, subscriptionB, subscriptionC, subscriptionD, tenantA); subscriptionClients.Clear(); subscriptionClients.Enqueue(clientFactory.GetSubscriptionClientVer2019( null , MockSubscriptionClientFactory.CreateSubscripitonsFromJson(null) , null )); var mock = new AccountMockClientFactory(() => { return(subscriptionClients.Peek()); }, true); mock.MoqClients = true; AzureSession.Instance.ClientFactory = mock; var client = GetProfileClient(); Assert.Throws <PSInvalidOperationException>(() => client.Login( Context.Account, Context.Environment, tenantB, subscriptionB, null, null, false, null)); }