本文整理汇总了C#中Microsoft.Azure.Common.Authentication.ProfileClient.AddOrSetAccount方法的典型用法代码示例。如果您正苦于以下问题:C# ProfileClient.AddOrSetAccount方法的具体用法?C# ProfileClient.AddOrSetAccount怎么用?C# ProfileClient.AddOrSetAccount使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Microsoft.Azure.Common.Authentication.ProfileClient
的用法示例。
在下文中一共展示了ProfileClient.AddOrSetAccount方法的11个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: BaseSetup
public void BaseSetup()
{
if (AzureSession.DataStore != null && !(AzureSession.DataStore is MemoryDataStore))
{
AzureSession.DataStore = new MemoryDataStore();
}
currentProfile = new AzureSMProfile();
if (currentProfile.Context.Subscription == null)
{
var newGuid = Guid.NewGuid();
var client = new ProfileClient(currentProfile);
client.AddOrSetAccount(new AzureAccount
{
Id = "test",
Type = AzureAccount.AccountType.User,
Properties = new Dictionary<AzureAccount.Property, string>
{
{AzureAccount.Property.Subscriptions, newGuid.ToString()}
}
});
client.AddOrSetSubscription( new AzureSubscription { Id = newGuid, Name = "test", Environment = EnvironmentName.AzureCloud, Account = "test" });
client.SetSubscriptionAsDefault(newGuid, "test");
}
AzureSession.AuthenticationFactory = new MockTokenAuthenticationFactory();
}
示例2: ProfileSaveDoesNotSerializeContext
public void ProfileSaveDoesNotSerializeContext()
{
var dataStore = new MockDataStore();
var currentProfile = new AzureProfile(Path.Combine(AzureSession.ProfileDirectory, AzureSession.ProfileFile));
AzureSession.DataStore = dataStore;
var client = new ProfileClient(currentProfile);
var tenant = Guid.NewGuid().ToString();
var environment = new AzureEnvironment
{
Name = "testCloud",
Endpoints = { { AzureEnvironment.Endpoint.ActiveDirectory, "http://contoso.com" } }
};
var account = new AzureAccount
{
Id = "[email protected]",
Type = AzureAccount.AccountType.User,
Properties = { { AzureAccount.Property.Tenants, tenant } }
};
var sub = new AzureSubscription
{
Account = account.Id,
Environment = environment.Name,
Id = new Guid(),
Name = "Contoso Test Subscription",
Properties = { { AzureSubscription.Property.Tenants, tenant } }
};
client.AddOrSetEnvironment(environment);
client.AddOrSetAccount(account);
client.AddOrSetSubscription(sub);
currentProfile.Save();
var profileFile = currentProfile.ProfilePath;
string profileContents = dataStore.ReadFileAsText(profileFile);
var readProfile = JsonConvert.DeserializeObject<Dictionary<string, object>>(profileContents);
Assert.False(readProfile.ContainsKey("Context"));
AzureProfile parsedProfile = new AzureProfile();
var serializer = new JsonProfileSerializer();
Assert.True(serializer.Deserialize(profileContents, parsedProfile));
Assert.NotNull(parsedProfile);
Assert.NotNull(parsedProfile.Environments);
Assert.True(parsedProfile.Environments.ContainsKey(environment.Name));
Assert.NotNull(parsedProfile.Accounts);
Assert.True(parsedProfile.Accounts.ContainsKey(account.Id));
Assert.NotNull(parsedProfile.Subscriptions);
Assert.True(parsedProfile.Subscriptions.ContainsKey(sub.Id));
}
示例3: AddOrSetAzureSubscriptionUpdatesInMemory
public void AddOrSetAzureSubscriptionUpdatesInMemory()
{
MemoryDataStore dataStore = new MemoryDataStore();
AzureSession.DataStore = dataStore;
ProfileClient client = new ProfileClient(currentProfile);
client.AddOrSetAccount(azureAccount);
client.AddOrSetEnvironment(azureEnvironment);
client.AddOrSetSubscription(azureSubscription1);
currentProfile.DefaultSubscription = azureSubscription1;
azureSubscription1.Properties[AzureSubscription.Property.StorageAccount] = "testAccount";
Assert.Equal(azureSubscription1.Id, currentProfile.Context.Subscription.Id);
Assert.Equal(azureSubscription1.Properties[AzureSubscription.Property.StorageAccount],
currentProfile.Context.Subscription.Properties[AzureSubscription.Property.StorageAccount]);
var newSubscription = new AzureSubscription
{
Id = azureSubscription1.Id,
Environment = azureSubscription1.Environment,
Account = azureSubscription1.Account,
Name = azureSubscription1.Name
};
newSubscription.Properties[AzureSubscription.Property.StorageAccount] = "testAccount1";
client.AddOrSetSubscription(newSubscription);
var newSubscriptionFromProfile = client.Profile.Subscriptions[newSubscription.Id];
Assert.Equal(newSubscription.Id, currentProfile.Context.Subscription.Id);
Assert.Equal(newSubscription.Id, newSubscriptionFromProfile.Id);
Assert.Equal(newSubscription.Properties[AzureSubscription.Property.StorageAccount],
currentProfile.Context.Subscription.Properties[AzureSubscription.Property.StorageAccount]);
Assert.Equal(newSubscription.Properties[AzureSubscription.Property.StorageAccount],
newSubscriptionFromProfile.Properties[AzureSubscription.Property.StorageAccount]);
}
示例4: AddOrSetAzureSubscriptionChecksAndUpdates
public void AddOrSetAzureSubscriptionChecksAndUpdates()
{
MemoryDataStore dataStore = new MemoryDataStore();
AzureSession.DataStore = dataStore;
currentProfile = new AzureProfile(Path.Combine(AzureSession.ProfileDirectory, AzureSession.ProfileFile));
ProfileClient client = new ProfileClient(currentProfile);
client.AddOrSetAccount(azureAccount);
client.AddOrSetEnvironment(azureEnvironment);
client.AddOrSetSubscription(azureSubscription1);
Assert.Equal(1, client.Profile.Subscriptions.Count);
var subscription = client.AddOrSetSubscription(azureSubscription1);
Assert.Equal(1, client.Profile.Subscriptions.Count);
Assert.Equal(1, client.Profile.Accounts.Count);
Assert.Equal(subscription, azureSubscription1);
Assert.Throws<ArgumentNullException>(() => client.AddOrSetSubscription(null));
Assert.Throws<ArgumentNullException>(() => client.AddOrSetSubscription(
new AzureSubscription { Id = new Guid(), Environment = null, Name = "foo" }));
}
示例5: GetCurrentEnvironmentReturnsCorrectValue
public void GetCurrentEnvironmentReturnsCorrectValue()
{
MemoryDataStore dataStore = new MemoryDataStore();
AzureSession.DataStore = dataStore;
ProfileClient client = new ProfileClient(currentProfile);
client.AddOrSetEnvironment(azureEnvironment);
client.AddOrSetAccount(azureAccount);
client.AddOrSetSubscription(azureSubscription1);
currentProfile.DefaultSubscription = azureSubscription1;
var newEnv = client.GetEnvironmentOrDefault(azureEnvironment.Name);
Assert.Equal(azureEnvironment.Name, newEnv.Name);
}
示例6: ImportPublishSettingsAddsSecondCertificate
public void ImportPublishSettingsAddsSecondCertificate()
{
MemoryDataStore dataStore = new MemoryDataStore();
AzureSession.DataStore = dataStore;
currentProfile = new AzureProfile(Path.Combine(AzureSession.ProfileDirectory, AzureSession.ProfileFile));
ProfileClient client = new ProfileClient(currentProfile);
var newSubscription = new AzureSubscription
{
Id = new Guid("f62b1e05-af8f-4203-8f97-421089adc053"),
Name = "Microsoft Azure Sandbox 9-220",
Environment = EnvironmentName.AzureCloud,
Account = azureAccount.Id
};
azureAccount.SetProperty(AzureAccount.Property.Subscriptions, newSubscription.Id.ToString());
client.AddOrSetAccount(azureAccount);
client.AddOrSetSubscription(newSubscription);
client.Profile.Save();
currentProfile = new AzureProfile(Path.Combine(AzureSession.ProfileDirectory, AzureSession.ProfileFile));
client = new ProfileClient(currentProfile);
dataStore.WriteFile("ImportPublishSettingsLoadsAndReturnsSubscriptions.publishsettings",
Properties.Resources.ValidProfile);
client.AddOrSetEnvironment(azureEnvironment);
var subscriptions = client.ImportPublishSettings("ImportPublishSettingsLoadsAndReturnsSubscriptions.publishsettings", azureEnvironment.Name);
Assert.Equal(2, client.Profile.Accounts.Count());
var certAccount = client.Profile.Accounts.Values.First(a => a.Type == AzureAccount.AccountType.Certificate);
var userAccount = client.Profile.Accounts.Values.First(a => a.Type == AzureAccount.AccountType.User);
Assert.True(subscriptions.All(s => s.Account == certAccount.Id));
Assert.Equal(azureAccount.Id, client.Profile.Subscriptions.Values.First(s => s.Id == newSubscription.Id).Account);
Assert.True(userAccount.GetPropertyAsArray(AzureAccount.Property.Subscriptions).Contains(newSubscription.Id.ToString()));
Assert.True(certAccount.GetPropertyAsArray(AzureAccount.Property.Subscriptions).Contains(newSubscription.Id.ToString()));
Assert.Equal(6, subscriptions.Count);
Assert.Equal(6, client.Profile.Subscriptions.Count);
}
示例7: ImportPublishSettingsUsesPassedInEnvironment
public void ImportPublishSettingsUsesPassedInEnvironment()
{
MemoryDataStore dataStore = new MemoryDataStore();
AzureSession.DataStore = dataStore;
currentProfile = new AzureProfile(Path.Combine(AzureSession.ProfileDirectory, AzureSession.ProfileFile));
ProfileClient client = new ProfileClient(currentProfile);
client.AddOrSetAccount(azureAccount);
client.AddOrSetEnvironment(azureEnvironment);
client.AddOrSetSubscription(azureSubscription1);
client.SetSubscriptionAsDefault(azureSubscription1.Name, azureAccount.Id);
client.Profile.Save();
client = new ProfileClient(currentProfile);
dataStore.WriteFile("ImportPublishSettingsLoadsAndReturnsSubscriptions.publishsettings",
Properties.Resources.ValidProfile3);
client.AddOrSetEnvironment(azureEnvironment);
var subscriptions = client.ImportPublishSettings("ImportPublishSettingsLoadsAndReturnsSubscriptions.publishsettings", azureEnvironment.Name);
Assert.True(subscriptions.All(s => s.Environment == azureEnvironment.Name));
Assert.Equal(6, subscriptions.Count);
Assert.Equal(7, client.Profile.Subscriptions.Count);
}
示例8: GetAzureSubscriptionByIdChecksAndReturnsOnlyLocal
public void GetAzureSubscriptionByIdChecksAndReturnsOnlyLocal()
{
SetMocks(new[] { rdfeSubscription1, rdfeSubscription2 }.ToList(), new[] { csmSubscription1, csmSubscription1withDuplicateId }.ToList());
MemoryDataStore dataStore = new MemoryDataStore();
AzureSession.DataStore = dataStore;
currentProfile = new AzureProfile(Path.Combine(AzureSession.ProfileDirectory, AzureSession.ProfileFile));
ProfileClient client = new ProfileClient(currentProfile);
client.AddOrSetAccount(azureAccount);
client.AddOrSetEnvironment(azureEnvironment);
client.AddOrSetSubscription(azureSubscription1);
client.AddOrSetSubscription(azureSubscription2);
var subscriptions = client.GetSubscription(azureSubscription1.Id);
Assert.Equal(azureSubscription1.Id, subscriptions.Id);
Assert.Throws<ArgumentException>(() => client.GetSubscription(new Guid()));
}
示例9: RefreshSubscriptionsListsAllSubscriptions
public void RefreshSubscriptionsListsAllSubscriptions()
{
SetMocks(new[] { rdfeSubscription1, rdfeSubscription2 }.ToList(), new[] { csmSubscription1, csmSubscription1withDuplicateId }.ToList());
MemoryDataStore dataStore = new MemoryDataStore();
AzureSession.DataStore = dataStore;
currentProfile = new AzureProfile(Path.Combine(AzureSession.ProfileDirectory, AzureSession.ProfileFile));
ProfileClient client = new ProfileClient(currentProfile);
client.AddOrSetAccount(azureAccount);
client.AddOrSetEnvironment(azureEnvironment);
client.AddOrSetSubscription(azureSubscription1);
var subscriptions = client.RefreshSubscriptions(azureEnvironment);
Assert.Equal(4, subscriptions.Count);
Assert.Equal(1, subscriptions.Count(s => s.Id == new Guid(rdfeSubscription1.SubscriptionId)));
Assert.Equal(1, subscriptions.Count(s => s.Id == new Guid(rdfeSubscription2.SubscriptionId)));
Assert.Equal(1, subscriptions.Count(s => s.Id == new Guid(csmSubscription1.SubscriptionId)));
Assert.True(subscriptions.All(s => s.Environment == "Test"));
Assert.True(subscriptions.All(s => s.Account == "test"));
}
示例10: ImportPublishSettingsDefaultsToAzureCloudWithIncorrectManagementUrl
public void ImportPublishSettingsDefaultsToAzureCloudWithIncorrectManagementUrl()
{
MemoryDataStore dataStore = new MemoryDataStore();
AzureSession.DataStore = dataStore;
currentProfile = new AzureSMProfile(Path.Combine(AzureSession.ProfileDirectory, AzureSession.ProfileFile));
ProfileClient client = new ProfileClient(currentProfile);
client.AddOrSetAccount(azureAccount);
client.AddOrSetEnvironment(azureEnvironment);
client.AddOrSetSubscription(azureSubscription1);
client.SetSubscriptionAsDefault(azureSubscription1.Name, azureAccount.Id);
client.Profile.Save();
currentProfile = new AzureSMProfile(Path.Combine(AzureSession.ProfileDirectory, AzureSession.ProfileFile));
client = new ProfileClient(currentProfile);
dataStore.WriteFile("ImportPublishSettingsLoadsAndReturnsSubscriptions.publishsettings",
Microsoft.WindowsAzure.Commands.Common.Test.Properties.Resources.ValidProfile3);
client.AddOrSetEnvironment(azureEnvironment);
var subscriptions = client.ImportPublishSettings("ImportPublishSettingsLoadsAndReturnsSubscriptions.publishsettings", null);
Assert.True(subscriptions.All(s => s.Environment == EnvironmentName.AzureCloud));
Assert.Equal(6, subscriptions.Count);
Assert.Equal(7, client.Profile.Subscriptions.Count);
}
示例11: ProfileSerializeDeserializeWorks
public void ProfileSerializeDeserializeWorks()
{
var dataStore = new MockDataStore();
var currentProfile = new AzureProfile(Path.Combine(AzureSession.ProfileDirectory, AzureSession.ProfileFile));
AzureSession.DataStore = dataStore;
var client = new ProfileClient(currentProfile);
var tenant = Guid.NewGuid().ToString();
var environment = new AzureEnvironment
{
Name = "testCloud",
Endpoints = { { AzureEnvironment.Endpoint.ActiveDirectory, "http://contoso.com" } }
};
var account = new AzureAccount
{
Id = "[email protected]",
Type = AzureAccount.AccountType.User,
Properties = { { AzureAccount.Property.Tenants, tenant } }
};
var sub = new AzureSubscription
{
Account = account.Id,
Environment = environment.Name,
Id = new Guid(),
Name = "Contoso Test Subscription",
Properties = { { AzureSubscription.Property.Tenants, tenant } }
};
client.AddOrSetEnvironment(environment);
client.AddOrSetAccount(account);
client.AddOrSetSubscription(sub);
AzureProfile deserializedProfile;
// Round-trip the exception: Serialize and de-serialize with a BinaryFormatter
BinaryFormatter bf = new BinaryFormatter();
using (MemoryStream ms = new MemoryStream())
{
// "Save" object state
bf.Serialize(ms, currentProfile);
// Re-use the same stream for de-serialization
ms.Seek(0, 0);
// Replace the original exception with de-serialized one
deserializedProfile = (AzureProfile)bf.Deserialize(ms);
}
Assert.NotNull(deserializedProfile);
var jCurrentProfile = JsonConvert.SerializeObject(currentProfile);
var jDeserializedProfile = JsonConvert.SerializeObject(deserializedProfile);
Assert.Equal(jCurrentProfile, jDeserializedProfile);
}