public void CreateFeatureRegistrationTests() { const string ProviderName = "Providers.Test"; const string FeatureName = "Feature1"; var registeredFeature = new SubscriptionFeatureRegistration(id: "featureId1", name: $"{ProviderName}/{FeatureName}"); registeredFeature.Properties = new SubscriptionFeatureRegistrationProperties { State = ProviderFeatureClient.RegisteredStateName }; this.featureOperationsMock .Setup(client => client.CreateOrUpdateWithHttpMessagesAsync(It.IsAny <string>(), It.IsAny <string>(), It.IsAny <SubscriptionFeatureRegistration>(), null, It.IsAny <CancellationToken>())) .Callback((string providerName, string featureName, SubscriptionFeatureRegistration subscriptionFeatureRegistrationType, Dictionary <string, List <string> > customHeaders, CancellationToken ignored) => { Assert.Equal(ProviderName, providerName, StringComparer.OrdinalIgnoreCase); Assert.Equal(FeatureName, featureName, StringComparer.OrdinalIgnoreCase); }) .Returns(() => Task.FromResult(new AzureOperationResponse <SubscriptionFeatureRegistration>() { Body = registeredFeature })); this.cmdlet.ProviderNamespace = ProviderName; this.cmdlet.Name = FeatureName; this.commandRuntimeMock .Setup(m => m.WriteObject(It.IsAny <object>())) .Callback((object obj) => { Assert.IsType <PSSubscriptionFeatureRegistration>(obj); var feature = (PSSubscriptionFeatureRegistration)obj; Assert.Equal(ProviderFeatureClient.RegisteredStateName, feature.Properties.State, StringComparer.OrdinalIgnoreCase); Assert.Equal($"{ProviderName}/{FeatureName}", feature.Name, StringComparer.OrdinalIgnoreCase); }); this.cmdlet.ExecuteCmdlet(); this.VerifyCallPatternAndReset(succeeded: true); }
/// <summary> /// Create or update a feature registration. /// </summary> /// <param name='operations'> /// The operations group for this extension method. /// </param> /// <param name='providerNamespace'> /// The provider namespace. /// </param> /// <param name='featureName'> /// The feature name. /// </param> /// <param name='subscriptionFeatureRegistrationType'> /// Subscription Feature Registration Type details. /// </param> /// <param name='cancellationToken'> /// The cancellation token. /// </param> public static async Task <SubscriptionFeatureRegistration> CreateOrUpdateAsync(this ISubscriptionFeatureRegistrationsOperations operations, string providerNamespace, string featureName, SubscriptionFeatureRegistration subscriptionFeatureRegistrationType = default(SubscriptionFeatureRegistration), CancellationToken cancellationToken = default(CancellationToken)) { using (var _result = await operations.CreateOrUpdateWithHttpMessagesAsync(providerNamespace, featureName, subscriptionFeatureRegistrationType, null, cancellationToken).ConfigureAwait(false)) { return(_result.Body); } }
/// <summary> /// Create or update a feature registration. /// </summary> /// <param name='operations'> /// The operations group for this extension method. /// </param> /// <param name='providerNamespace'> /// The provider namespace. /// </param> /// <param name='featureName'> /// The feature name. /// </param> /// <param name='subscriptionFeatureRegistrationType'> /// Subscription Feature Registration Type details. /// </param> public static SubscriptionFeatureRegistration CreateOrUpdate(this ISubscriptionFeatureRegistrationsOperations operations, string providerNamespace, string featureName, SubscriptionFeatureRegistration subscriptionFeatureRegistrationType = default(SubscriptionFeatureRegistration)) { return(operations.CreateOrUpdateAsync(providerNamespace, featureName, subscriptionFeatureRegistrationType).GetAwaiter().GetResult()); }
public static PSSubscriptionFeatureRegistration ToPSSubscriptionFeatureRegistration(this SubscriptionFeatureRegistration feature) { return(new PSSubscriptionFeatureRegistration { Id = feature.Id, Name = feature.Name, Properties = feature.Properties }); }