public void SetDefaultSitesWhenGatewayIsNotProvisioned()
        {
            using (NetworkTestClient networkTestClient = new NetworkTestClient())
            {
                networkTestClient.EnsureSiteToSiteNetworkConfigurationExists();

                networkTestClient.Gateways.EnsureNoGatewayExists();

                const string virtualNetworkSiteName            = NetworkTestConstants.VirtualNetworkSiteName;
                GatewaySetDefaultSiteListParameters parameters = CreateParameters("localNetworkSiteName");

                try
                {
                    networkTestClient.Gateways.SetDefaultSites(virtualNetworkSiteName, parameters);
                    Assert.True(false, "SetDefaultSites should throw an CloudException when the gateway was not provisioned.");
                }
                catch (Hyak.Common.CloudException e)
                {
                    Assert.NotNull(e.Response);
                    Assert.Equal("BadRequest", e.Error.Code);
                    Assert.True(e.Error.Message.Contains("current provisioning status of the gateway prevents this operation"));
                    Assert.Equal(HttpStatusCode.BadRequest, e.Response.StatusCode);
                    Assert.Equal("Bad Request", e.Response.ReasonPhrase);
                }
            }
        }
Esempio n. 2
0
        public GatewayGetOperationStatusResponse SetDefaultSite(string vnetName, string defaultSiteName)
        {
            GatewaySetDefaultSiteListParameters parameters = new GatewaySetDefaultSiteListParameters()
            {
                DefaultSite = defaultSiteName,
            };

            return(client.Gateways.SetDefaultSites(vnetName, parameters));
        }
        public SetDefaultSites(IGatewayOperations gatewayClient, string virtualNetworkSiteName, GatewaySetDefaultSiteListParameters parameters)
        {
            this.gatewayClient          = gatewayClient;
            this.virtualNetworkSiteName = virtualNetworkSiteName;
            this.parameters             = parameters;

            GatewayGetResponse getGatewayResponse = gatewayClient.Get(virtualNetworkSiteName);

            if (getGatewayResponse.DefaultSite == null || string.IsNullOrEmpty(getGatewayResponse.DefaultSite.Name))
            {
                oldDefaultSite = "";
            }
            else
            {
                oldDefaultSite = getGatewayResponse.DefaultSite.Name;
            }
        }
        public void SetDefaultSitesWithDynamicRoutingGateway()
        {
            using (NetworkTestClient networkTestClient = new NetworkTestClient())
            {
                networkTestClient.Gateways.EnsureDynamicRoutingGatewayExists();

                const string virtualNetworkSiteName            = NetworkTestConstants.VirtualNetworkSiteName;
                GatewaySetDefaultSiteListParameters parameters = CreateParameters(NetworkTestConstants.LocalNetworkSiteName);

                GatewayGetOperationStatusResponse response = networkTestClient.Gateways.SetDefaultSites(virtualNetworkSiteName, parameters);
                Assert.NotNull(response);
                Assert.Equal(HttpStatusCode.OK, response.HttpStatusCode);
                Assert.NotNull(response.Id);
                Assert.Equal(GatewayOperationStatus.Successful, response.Status);

                GatewayGetResponse getResponse = networkTestClient.Gateways.GetGateway(virtualNetworkSiteName);
                Assert.NotNull(response);
                Assert.Equal(NetworkTestConstants.LocalNetworkSiteName, getResponse.DefaultSite.Name);
            }
        }
        public void SetDefaultSitesWhenVirtualNetworkSiteNameDoesntExist()
        {
            using (NetworkTestClient networkTestClient = new NetworkTestClient())
            {
                const string virtualNetworkSiteName            = "NonExistantVirtualNetworkSiteName";
                GatewaySetDefaultSiteListParameters parameters = CreateParameters("localNetworkSiteName");

                try
                {
                    networkTestClient.Gateways.SetDefaultSites(virtualNetworkSiteName, parameters);
                    Assert.True(false, "SetDefaultSites should throw an CloudException when virtualNetworkSiteName did not exist.");
                }
                catch (Hyak.Common.CloudException e)
                {
                    Assert.NotNull(e.Response);
                    Assert.Equal("BadRequest", e.Error.Code);
                    Assert.True(e.Error.Message.Contains("virtual network name \'NonExistantVirtualNetworkSiteName\' is not valid"));
                    Assert.Equal(HttpStatusCode.BadRequest, e.Response.StatusCode);
                    Assert.Equal("Bad Request", e.Response.ReasonPhrase);
                }
            }
        }
        public void SetDefaultSitesWithStaticRoutingGateway()
        {
            using (NetworkTestClient networkTestClient = new NetworkTestClient())
            {
                networkTestClient.Gateways.EnsureStaticRoutingGatewayExists();

                const string virtualNetworkSiteName            = NetworkTestConstants.VirtualNetworkSiteName;
                GatewaySetDefaultSiteListParameters parameters = CreateParameters("localNetworkSiteName");

                try
                {
                    networkTestClient.Gateways.SetDefaultSites(virtualNetworkSiteName, parameters);
                    Assert.True(false, "SetDefaultSites should throw an CloudException when the gateway is a static routing gateway.");
                }
                catch (Hyak.Common.CloudException e)
                {
                    Assert.NotNull(e.Response);
                    Assert.Equal("BadRequest", e.Error.Code);
                    Assert.True(e.Error.Message.Contains("This operation is enabled only for the following gateway mode(s): BrooklynLite."));
                    Assert.Equal(HttpStatusCode.BadRequest, e.Response.StatusCode);
                    Assert.Equal("Bad Request", e.Response.ReasonPhrase);
                }
            }
        }
        public void SetDefaultSitesWithDefaultSiteThatDoesNotExist()
        {
            using (NetworkTestClient networkTestClient = new NetworkTestClient())
            {
                networkTestClient.Gateways.EnsureDynamicRoutingGatewayExists();

                const string virtualNetworkSiteName            = NetworkTestConstants.VirtualNetworkSiteName;
                GatewaySetDefaultSiteListParameters parameters = CreateParameters("NonExistantLocalNetworkSite");

                try
                {
                    networkTestClient.Gateways.SetDefaultSites(virtualNetworkSiteName, parameters);
                    Assert.True(false, "SetDefaultSites should throw an CloudException when the default site is a non-existant local network site.");
                }
                catch (Hyak.Common.CloudException e)
                {
                    Assert.NotNull(e.Response);
                    Assert.Equal("BadRequest", e.Error.Code);
                    Assert.True(e.Error.Message.Contains("local network site name \'NonExistantLocalNetworkSite\' is not valid"));
                    Assert.Equal(HttpStatusCode.BadRequest, e.Response.StatusCode);
                    Assert.Equal("Bad Request", e.Response.ReasonPhrase);
                }
            }
        }
        public GatewayGetOperationStatusResponse SetDefaultSites(string virtualNetworkSiteName, GatewaySetDefaultSiteListParameters parameters)
        {
            SetDefaultSites operation = new SetDefaultSites(gatewayClient, virtualNetworkSiteName, parameters);

            testClient.InvokeTestOperation(operation);

            return(operation.InvokeResponse);
        }