예제 #1
0
        public void For_ReturnsAuthorizedNodes()
        {
            authorization.IsGrantedFor(context.HttpContext.User.Id(), "Administration", "Accounts", "Index").Returns(true);

            SiteMapNode[] actual = siteMap.For(context).ToArray();

            Assert.Single(actual);

            Assert.Null(actual[0].Action);
            Assert.Equal("#", actual[0].Url);
            Assert.Null(actual[0].Controller);
            Assert.Equal("Administration", actual[0].Area);
            Assert.Equal("fa fa-cogs", actual[0].IconClass);
            Assert.Equal(Resource.ForSiteMap("Administration", null, null), actual[0].Title);

            actual = actual[0].Children.ToArray();

            Assert.Single(actual);

            Assert.Empty(actual[0].Children);

            Assert.Equal("/test", actual[0].Url);
            Assert.Equal("Index", actual[0].Action);
            Assert.Equal("Accounts", actual[0].Controller);
            Assert.Equal("Administration", actual[0].Area);
            Assert.Equal("fa fa-user", actual[0].IconClass);
            Assert.Equal(Resource.ForSiteMap("Administration", "Accounts", "Index"), actual[0].Title);
        }
예제 #2
0
        public void For_SetsActiveMenu()
        {
            route["action"]     = "Create";
            route["controller"] = "Roles";
            route["area"]       = "Administration";

            siteMap = new SiteMap(CreateSiteMap(), null);

            SiteMapNode[] actual = siteMap.For(context).ToArray();

            Assert.Single(actual);
            Assert.True(actual[0].IsActive);

            actual = actual[0].Children.ToArray();

            Assert.Equal(2, actual.Length);
            Assert.True(actual[1].IsActive);
            Assert.False(actual[0].IsActive);
            Assert.Empty(actual[0].Children);

            actual = actual[1].Children.ToArray();

            Assert.Empty(actual[0].Children);
            Assert.True(actual[0].IsActive);
            Assert.Single(actual);
        }
예제 #3
0
        public void For_NoAuthorization_ReturnsAllNodes()
        {
            authorization.IsGrantedFor(Arg.Any <Int64?>(), Arg.Any <String>()).Returns(true);

            SiteMapNode[] actual = siteMap.For(context).ToArray();

            Assert.Single(actual);

            Assert.Null(actual[0].Action);
            Assert.Null(actual[0].Controller);
            Assert.Equal("Administration", actual[0].Area);
            Assert.Equal("Administration", actual[0].Path);
            Assert.Equal("fa fa-cogs", actual[0].IconClass);

            actual = actual[0].Children.ToArray();

            Assert.Equal(2, actual.Length);

            Assert.Empty(actual[0].Children);

            Assert.Equal("Index", actual[0].Action);
            Assert.Equal("Accounts", actual[0].Controller);
            Assert.Equal("Administration", actual[0].Area);
            Assert.Equal("fa fa-user", actual[0].IconClass);
            Assert.Equal("Administration/Accounts/Index", actual[0].Path);

            Assert.Null(actual[1].Action);
            Assert.Equal("Roles", actual[1].Controller);
            Assert.Equal("Administration", actual[1].Area);
            Assert.Equal("fa fa-users", actual[1].IconClass);
            Assert.Equal("Administration/Roles", actual[1].Path);

            actual = actual[1].Children.ToArray();

            Assert.Single(actual);
            Assert.Empty(actual[0].Children);

            Assert.Equal("Create", actual[0].Action);
            Assert.Equal("Roles", actual[0].Controller);
            Assert.Equal("Administration", actual[0].Area);
            Assert.Equal("far fa-file", actual[0].IconClass);
            Assert.Equal("Administration/Roles/Create", actual[0].Path);
        }
예제 #4
0
        public void For_NoAuthorization_ReturnsAllNodes()
        {
            siteMap = new SiteMap(CreateSiteMap(), null);

            SiteMapNode[] actual = siteMap.For(context).ToArray();

            Assert.Single(actual);

            Assert.Null(actual[0].Action);
            Assert.Equal("#", actual[0].Url);
            Assert.Null(actual[0].Controller);
            Assert.Equal("Administration", actual[0].Area);
            Assert.Equal("fa fa-cogs", actual[0].IconClass);
            Assert.Equal(Resource.ForSiteMap("Administration", null, null), actual[0].Title);

            actual = actual[0].Children.ToArray();

            Assert.Equal(2, actual.Length);

            Assert.Empty(actual[0].Children);

            Assert.Equal("/test", actual[0].Url);
            Assert.Equal("Index", actual[0].Action);
            Assert.Equal("Accounts", actual[0].Controller);
            Assert.Equal("Administration", actual[0].Area);
            Assert.Equal("fa fa-user", actual[0].IconClass);
            Assert.Equal(Resource.ForSiteMap("Administration", "Accounts", "Index"), actual[0].Title);

            Assert.Null(actual[1].Action);
            Assert.Equal("#", actual[1].Url);
            Assert.Equal("Roles", actual[1].Controller);
            Assert.Equal("Administration", actual[1].Area);
            Assert.Equal("fa fa-users", actual[1].IconClass);
            Assert.Equal(Resource.ForSiteMap("Administration", "Roles", null), actual[1].Title);

            actual = actual[1].Children.ToArray();

            Assert.Single(actual);
            Assert.Empty(actual[0].Children);

            Assert.Equal("/test", actual[0].Url);
            Assert.Equal("Create", actual[0].Action);
            Assert.Equal("Roles", actual[0].Controller);
            Assert.Equal("Administration", actual[0].Area);
            Assert.Equal("far fa-file", actual[0].IconClass);
            Assert.Equal(Resource.ForSiteMap("Administration", "Roles", "Create"), actual[0].Title);
        }