public void DefaultRolloutOperationsTests()
        {
            using (var context = MockContext.Start(GetType()))
            {
                var providerNamespace = "Microsoft.Contoso";
                var rolloutName       = "defaultRolloutSDK";
                var properties        = new DefaultRolloutPropertiesModel
                {
                    Specification = new DefaultRolloutPropertiesSpecification
                    {
                        Canary = new DefaultRolloutSpecificationCanary
                        {
                            SkipRegions = new List <string>
                            {
                                "BrazilUS"
                            }
                        }
                    }
                };

                var defaultRollout = CreateDefaultRollout(context, providerNamespace, rolloutName, properties);
                Assert.NotNull(defaultRollout);

                defaultRollout = GetDefaultRollout(context, providerNamespace, rolloutName);
                Assert.NotNull(defaultRollout);

                var defaultRolloutsList = ListDefaultRollout(context, providerNamespace);
                Assert.NotNull(defaultRolloutsList);

                CancelDefaultRollout(context, providerNamespace, rolloutName);
                defaultRollout = GetDefaultRollout(context, providerNamespace, rolloutName);
                Assert.True(defaultRollout.Properties.ProvisioningState == "Canceled");

                DeleteDefaultRollout(context, providerNamespace, rolloutName);
                var exception = Assert.Throws <ErrorResponseException>(() => GetDefaultRollout(context, providerNamespace, rolloutName));
                Assert.True(exception.Response.StatusCode == System.Net.HttpStatusCode.NotFound);
            }
        }
        private DefaultRollout CreateDefaultRollout(MockContext context, string providerNamespace, string rolloutName, DefaultRolloutPropertiesModel properties)
        {
            ProviderHubClient client = GetProviderHubManagementClient(context);

            return(client.DefaultRollouts.BeginCreateOrUpdate(providerNamespace, rolloutName, properties));
        }
Пример #3
0
 /// <summary>
 /// Creates or updates the rollout details.
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='providerNamespace'>
 /// The name of the resource provider hosted within ProviderHub.
 /// </param>
 /// <param name='rolloutName'>
 /// The rollout name.
 /// </param>
 /// <param name='properties'>
 /// Properties of the rollout.
 /// </param>
 /// <param name='cancellationToken'>
 /// The cancellation token.
 /// </param>
 public static async Task <DefaultRollout> BeginCreateOrUpdateAsync(this IDefaultRolloutsOperations operations, string providerNamespace, string rolloutName, DefaultRolloutPropertiesModel properties = default(DefaultRolloutPropertiesModel), CancellationToken cancellationToken = default(CancellationToken))
 {
     using (var _result = await operations.BeginCreateOrUpdateWithHttpMessagesAsync(providerNamespace, rolloutName, properties, null, cancellationToken).ConfigureAwait(false))
     {
         return(_result.Body);
     }
 }
Пример #4
0
 /// <summary>
 /// Creates or updates the rollout details.
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='providerNamespace'>
 /// The name of the resource provider hosted within ProviderHub.
 /// </param>
 /// <param name='rolloutName'>
 /// The rollout name.
 /// </param>
 /// <param name='properties'>
 /// Properties of the rollout.
 /// </param>
 public static DefaultRollout BeginCreateOrUpdate(this IDefaultRolloutsOperations operations, string providerNamespace, string rolloutName, DefaultRolloutPropertiesModel properties = default(DefaultRolloutPropertiesModel))
 {
     return(operations.BeginCreateOrUpdateAsync(providerNamespace, rolloutName, properties).GetAwaiter().GetResult());
 }