public void ListRouteTablesWhenTwoTablesExist()
        {
            using (NetworkTestClient networkTestClient = new NetworkTestClient())
            {
                networkTestClient.Routes.EnsureNoRouteTablesExist();
                networkTestClient.Routes.EnsureRouteTableExists("MockRouteTableA");
                networkTestClient.Routes.EnsureRouteTableExists("MockRouteTableB");

                ListRouteTablesResponse listResponse = networkTestClient.Routes.ListRouteTables();
                Assert.NotNull(listResponse);
                Assert.NotNull(listResponse.RouteTables);
                Assert.Equal(2, listResponse.RouteTables.Count);

                RouteTable mockRouteTableA = listResponse.RouteTables[0];
                Assert.Equal("MockRouteTableA", mockRouteTableA.Name);
                Assert.Equal("MockLabel", mockRouteTableA.Label);
                Assert.Equal(NetworkTestConstants.WideVNetLocation, mockRouteTableA.Location);
                Assert.Equal(RouteTableState.Created, mockRouteTableA.RouteTableState);

                RouteTable mockRouteTableB = listResponse.RouteTables[1];
                Assert.Equal("MockRouteTableB", mockRouteTableB.Name);
                Assert.Equal("MockLabel", mockRouteTableB.Label);
                Assert.Equal(NetworkTestConstants.WideVNetLocation, mockRouteTableB.Location);
                Assert.Equal(RouteTableState.Created, mockRouteTableB.RouteTableState);
            }
        }
        public void EnsureRouteTableIsOnlyRouteTableInSubscription(string routeTableName)
        {
            ListRouteTablesResponse listResponse = ListRouteTables();

            bool tableExists = false;

            if (listResponse.RouteTables != null)
            {
                foreach (RouteTable table in listResponse.RouteTables)
                {
                    if (string.Equals(routeTableName, table.Name, StringComparison.InvariantCultureIgnoreCase))
                    {
                        tableExists = true;
                    }
                    else
                    {
                        DeleteRouteTable(table.Name);
                    }
                }
            }

            if (tableExists == false)
            {
                CreateRouteTable(new CreateRouteTableParameters()
                {
                    Name     = routeTableName,
                    Label    = "MockLabel",
                    Location = NetworkTestConstants.WideVNetLocation,
                });
            }
        }
        public void ListRouteTablesWhenNoTablesExist()
        {
            using (NetworkTestClient networkTestClient = new NetworkTestClient())
            {
                networkTestClient.Routes.EnsureNoRouteTablesExist();

                ListRouteTablesResponse listResponse = networkTestClient.Routes.ListRouteTables();
                Assert.NotNull(listResponse);
                Assert.NotNull(listResponse.RouteTables);
                Assert.Equal(0, listResponse.RouteTables.Count);
            }
        }
        public void EnsureNoRouteTablesExist()
        {
            ListRouteTablesResponse listResponse = ListRouteTables();

            if (listResponse.RouteTables != null)
            {
                foreach (RouteTable table in listResponse.RouteTables)
                {
                    DeleteRouteTable(table.Name);
                }
            }
        }