public void RemoveAzureSubscriptionChecksAndRemoves() { MemoryDataStore dataStore = new MemoryDataStore(); AzureSession.DataStore = dataStore; currentProfile = new AzureProfile(Path.Combine(AzureSession.ProfileDirectory, AzureSession.ProfileFile)); ProfileClient client = new ProfileClient(currentProfile); client.Profile.Accounts[azureAccount.Id] = azureAccount; client.AddOrSetEnvironment(azureEnvironment); client.AddOrSetSubscription(azureSubscription1); client.SetSubscriptionAsDefault(azureSubscription1.Name, azureSubscription1.Account); Assert.Equal(1, client.Profile.Subscriptions.Count); List<string> log = new List<string>(); client.WarningLog = log.Add; var subscription = client.RemoveSubscription(azureSubscription1.Name); Assert.Equal(0, client.Profile.Subscriptions.Count); Assert.Equal(azureSubscription1.Name, subscription.Name); Assert.Equal(1, log.Count); Assert.Equal( "The default subscription is being removed. Use Select-AzureSubscription -Default <subscriptionName> to select a new default subscription.", log[0]); Assert.Throws<ArgumentException>(() => client.RemoveSubscription("bad")); Assert.Throws<ArgumentNullException>(() => client.RemoveSubscription(null)); }