public async Task Get() { Subscription subscription = await Client.GetDefaultSubscriptionAsync(); string policyDefinitionName = Recording.GenerateAssetName("polDef-"); SubscriptionPolicyDefinition policyDefinition = await CreatePolicyDefinitionAtSubscription(subscription, policyDefinitionName); string policySetDefinitionName = Recording.GenerateAssetName("polSetDef-"); SubscriptionPolicySetDefinition policySetDefinition = await CreatePolicySetDefinitionAtSubscription(subscription, policyDefinition, policySetDefinitionName); SubscriptionPolicySetDefinition getPolicySetDefinition = await subscription.GetSubscriptionPolicySetDefinitions().GetAsync(policySetDefinitionName); AssertValidPolicySetDefinition(policySetDefinition, getPolicySetDefinition); }
public async Task CreateOrUpdateAtSubscription() { Subscription subscription = await Client.GetDefaultSubscriptionAsync(); string policyDefinitionName = Recording.GenerateAssetName("polDef-"); SubscriptionPolicyDefinition policyDefinition = await CreatePolicyDefinitionAtSubscription(subscription, policyDefinitionName); string policySetDefinitionName = Recording.GenerateAssetName("polSetDef-"); SubscriptionPolicySetDefinition policySetDefinition = await CreatePolicySetDefinitionAtSubscription(subscription, policyDefinition, policySetDefinitionName); Assert.AreEqual(policySetDefinitionName, policySetDefinition.Data.Name); Assert.ThrowsAsync <ArgumentNullException>(async() => _ = await subscription.GetSubscriptionPolicySetDefinitions().CreateOrUpdateAsync(true, null, policySetDefinition.Data)); Assert.ThrowsAsync <ArgumentNullException>(async() => _ = await subscription.GetSubscriptionPolicySetDefinitions().CreateOrUpdateAsync(true, policySetDefinitionName, null)); }
public async Task Delete() { Subscription subscription = await Client.GetDefaultSubscriptionAsync(); string policyDefinitionName = Recording.GenerateAssetName("polDef-"); SubscriptionPolicyDefinition policyDefinition = await CreatePolicyDefinitionAtSubscription(subscription, policyDefinitionName); string policySetDefinitionName = Recording.GenerateAssetName("polSetDef-"); SubscriptionPolicySetDefinition policySetDefinition = await CreatePolicySetDefinitionAtSubscription(subscription, policyDefinition, policySetDefinitionName); await policySetDefinition.DeleteAsync(WaitUntil.Completed); var ex = Assert.ThrowsAsync <RequestFailedException>(async() => await policySetDefinition.GetAsync()); Assert.AreEqual(404, ex.Status); }
public async Task List() { Subscription subscription = await Client.GetDefaultSubscriptionAsync(); string policyDefinitionName = Recording.GenerateAssetName("polDef-"); SubscriptionPolicyDefinition policyDefinition = await CreatePolicyDefinitionAtSubscription(subscription, policyDefinitionName); string policySetDefinitionName = Recording.GenerateAssetName("polSetDef-"); SubscriptionPolicySetDefinition policySetDefinition = await CreatePolicySetDefinitionAtSubscription(subscription, policyDefinition, policySetDefinitionName); int count = 0; string policyType = "Custom"; string filter = $"policyType eq '{policyType}'"; await foreach (var tempPolicySetDefinition in subscription.GetSubscriptionPolicySetDefinitions().GetAllAsync(filter)) { count++; } Assert.Greater(count, 0); }
public virtual SubscriptionPolicySetDefinition GetSubscriptionPolicySetDefinition(ResourceIdentifier id) { SubscriptionPolicySetDefinition.ValidateResourceId(id); return(new SubscriptionPolicySetDefinition(this, id)); }
private static void AssertValidPolicySetDefinition(SubscriptionPolicySetDefinition model, SubscriptionPolicySetDefinition getResult) { Assert.AreEqual(model.Data.Name, getResult.Data.Name); Assert.AreEqual(model.Data.Id, getResult.Data.Id); Assert.AreEqual(model.Data.Type, getResult.Data.Type); Assert.AreEqual(model.Data.PolicyType, getResult.Data.PolicyType); Assert.AreEqual(model.Data.DisplayName, getResult.Data.DisplayName); Assert.AreEqual(model.Data.Description, getResult.Data.Description); Assert.AreEqual(model.Data.Metadata, getResult.Data.Metadata); if (model.Data.Parameters != null || getResult.Data.Parameters != null) { Assert.NotNull(model.Data.Parameters); Assert.NotNull(getResult.Data.Parameters); Assert.AreEqual(model.Data.Parameters.Count, getResult.Data.Parameters.Count); foreach (KeyValuePair <string, ParameterDefinitionsValue> kvp in model.Data.Parameters) { Assert.AreEqual(getResult.Data.Parameters.ContainsKey(kvp.Key), true); ParameterDefinitionsValue getParameterDefinitionsValue = getResult.Data.Parameters[kvp.Key]; Assert.AreEqual(kvp.Value.Type, getParameterDefinitionsValue.Type); if (kvp.Value.AllowedValues != null || getParameterDefinitionsValue.AllowedValues != null) { Assert.NotNull(kvp.Value.AllowedValues); Assert.NotNull(getParameterDefinitionsValue.AllowedValues); Assert.AreEqual(kvp.Value.AllowedValues.Count, getParameterDefinitionsValue.AllowedValues.Count); for (int i = 0; i < kvp.Value.AllowedValues.Count; ++i) { Assert.AreEqual(kvp.Value.AllowedValues[i], getParameterDefinitionsValue.AllowedValues[i]); } } Assert.AreEqual(kvp.Value.DefaultValue, getParameterDefinitionsValue.DefaultValue); if (kvp.Value.Metadata != null || getParameterDefinitionsValue.Metadata != null) { Assert.NotNull(kvp.Value.Metadata); Assert.NotNull(getParameterDefinitionsValue.Metadata); Assert.AreEqual(kvp.Value.Metadata.DisplayName, getParameterDefinitionsValue.Metadata.DisplayName); Assert.AreEqual(kvp.Value.Metadata.Description, getParameterDefinitionsValue.Metadata.Description); Assert.AreEqual(kvp.Value.Metadata.StrongType, getParameterDefinitionsValue.Metadata.StrongType); Assert.AreEqual(kvp.Value.Metadata.AssignPermissions, getParameterDefinitionsValue.Metadata.AssignPermissions); Assert.AreEqual(kvp.Value.Metadata.AdditionalProperties, getParameterDefinitionsValue.Metadata.AdditionalProperties); } } } Assert.AreEqual(model.Data.PolicyDefinitions.Count, getResult.Data.PolicyDefinitions.Count); foreach (var expectedDefinition in model.Data.PolicyDefinitions) { var resultDefinitions = getResult.Data.PolicyDefinitions.Where(def => def.PolicyDefinitionId.Equals(expectedDefinition.PolicyDefinitionId)); Assert.True(resultDefinitions.Count() > 0); var resultDefinition = resultDefinitions.Single(def => expectedDefinition.PolicyDefinitionReferenceId == null || expectedDefinition.PolicyDefinitionReferenceId.Equals(def.PolicyDefinitionReferenceId, StringComparison.Ordinal)); if (expectedDefinition.GroupNames != null) { Assert.AreEqual(expectedDefinition.GroupNames.Count(), resultDefinition.GroupNames.Count()); Assert.AreEqual(expectedDefinition.GroupNames.Count(), expectedDefinition.GroupNames.Intersect(resultDefinition.GroupNames).Count()); } else { Assert.Null(resultDefinition.GroupNames); } } if (model.Data.PolicyDefinitionGroups != null) { foreach (var group in model.Data.PolicyDefinitionGroups) { Assert.AreEqual(1, getResult.Data.PolicyDefinitionGroups.Count(resultGroup => resultGroup.Name.Equals(group.Name, StringComparison.Ordinal))); } } else { Assert.Null(getResult.Data.PolicyDefinitionGroups); } }