示例#1
0
        public void TestInitialise()
        {
            _RouteFilter = Factory.Resolve <IRouteFilter>();

            _Environment = new MockOwinEnvironment();
            _Environment.SetRequestPrincipal("test", "Basic");
        }
示例#2
0
        public void CanCreateRouteFilterRule()
        {
            using (var context = FluentMockContext.Start(GetType().FullName))
            {
                string testId            = SdkContext.RandomResourceName("", 9);
                string rfName            = "rf" + testId;
                string resourceGroupName = "rg" + testId;
                string ruleName          = "mynewrule";

                try
                {
                    var          manager     = TestHelper.CreateNetworkManager();
                    IRouteFilter routeFilter = manager.RouteFilters.Define(rfName)
                                               .WithRegion(Region.USSouthCentral)
                                               .WithNewResourceGroup(resourceGroupName)
                                               .Create();
                    routeFilter.Update()
                    .DefineRule(ruleName)
                    .WithBgpCommunity("12076:5010")
                    .Attach()
                    .Apply();
                    Assert.Equal(1, routeFilter.Rules.Count);
                    IRouteFilterRule rule;
                    routeFilter.Rules.TryGetValue(ruleName, out rule);
                    Assert.NotNull(rule);
                    Assert.Equal(1, rule.Communities.Count);
                    Assert.Equal("12076:5010", rule.Communities.ElementAt(0));

                    routeFilter.Update()
                    .UpdateRule(ruleName)
                    .WithBgpCommunities("12076:51005", "12076:51026")
                    .DenyAccess
                    .Parent()
                    .Apply();
                    routeFilter.Rules.TryGetValue(ruleName, out rule);
                    Assert.Equal(2, rule.Communities.Count);
                    Assert.Equal(Access.Deny, rule.Access);
                }
                finally
                {
                    try
                    {
                        TestHelper.CreateResourceManager().ResourceGroups.DeleteByName(resourceGroupName);
                    }
                    catch { }
                }
            }
        }
示例#3
0
        internal void Print(IRouteFilter resource)
        {
            var info = new StringBuilder();

            info.Append("Route Filter: ").Append(resource.Id)
            .Append("Name: ").Append(resource.Name)
            .Append("\n\tResource group: ").Append(resource.ResourceGroupName)
            .Append("\n\tRegion: ").Append(resource.Region)
            .Append("\n\tTags: ").Append(resource.Tags);

            if (resource.Rules != null)
            {
                foreach (var rule in resource.Rules.Values)
                {
                    info.Append("\n\tRule: ").Append(rule.Name)
                    .Append("\n\t\tAccess: ").Append(rule.Access);
                }
            }

            TestHelper.WriteLine(info.ToString());
        }