public void with_rules()
        {
            var node = new AuthorizationNode();
            node.AddRole("Role A");

            node.HasRules().ShouldBeTrue();
        }
        public void add_type_for_check()
        {
            var node = new AuthorizationNode();
            node.Add(typeof(FakeAuthCheck));

            node.Policies.Single().ShouldBeOfType<AuthorizationCheckPolicy<FakeAuthCheck>>();
        }
        public void add_type_for_a_policy()
        {
            var node = new AuthorizationNode();
            node.Add(typeof(AlwaysAllowPolicy));

            node.Policies.Single().ShouldBeOfType<AlwaysAllowPolicy>();
        }
Esempio n. 4
0
        public void adding_a_rule()
        {
            var node = new AuthorizationNode();
            node.AddRule(typeof (UrlModelShouldStartWithJ));

            toBehavior(node).Policies.Single().ShouldBeOfType<AuthorizationPolicy<UrlModel>>()
                .InnerRule.ShouldBeOfType<UrlModelShouldStartWithJ>();
        }
Esempio n. 5
0
        public void adding_a_type_that_is_not_a_rule()
        {
            var node = new AuthorizationNode();

            Exception<ArgumentOutOfRangeException>.ShouldBeThrownBy(() =>
            {
                node.AddRule(GetType());
            });
        }
Esempio n. 6
0
        public void adding_a_role()
        {
            var node = new AuthorizationNode();
            node.AddRole("RoleA");

            var authorizationBehavior = toBehavior(node);
            authorizationBehavior.Policies.Count.ShouldEqual(1);
            authorizationBehavior.Policies.First().ShouldBeOfType<AllowRole>().Role.ShouldEqual("RoleA");
        }
Esempio n. 7
0
        public void adding_a_policy()
        {
            var node = new AuthorizationNode();
            var policy = MockRepository.GenerateMock<IAuthorizationPolicy>();

            node.AddPolicy(policy);

            var authorizationBehavior = toBehavior(node);
            authorizationBehavior.Policies.Single().ShouldBeTheSameAs(policy);
        }
Esempio n. 8
0
        public void adding_multiple_roles()
        {
            var node = new AuthorizationNode();
            node.AddRole("RoleA");
            node.AddRole("RoleB");
            node.AddRole("RoleC");

            var authorizationBehavior = toBehavior(node);
            authorizationBehavior.Policies.Count.ShouldEqual(3);

            authorizationBehavior.Policies[0].ShouldBeOfType<AllowRole>().Role.ShouldEqual("RoleA");
            authorizationBehavior.Policies[1].ShouldBeOfType<AllowRole>().Role.ShouldEqual("RoleB");
            authorizationBehavior.Policies[2].ShouldBeOfType<AllowRole>().Role.ShouldEqual("RoleC");
        }
 public void SetUp()
 {
     theNode = new AuthorizationNode();
     theTracedNode = theNode.As<ITracedModel>();
 }
Esempio n. 10
0
        public void SetUp()
        {
            chain = new BehaviorChain();

            var node = new AuthorizationNode();
            node.AddRole("RoleA");
            node.AddRole("RoleB");
            node.AddRole("RoleC");

            chain.AddToEnd(node);

            endpointObjectDef = node.As<IAuthorizationRegistration>().ToEndpointAuthorizorObjectDef();
        }
Esempio n. 11
0
 private AuthorizationBehavior toBehavior(AuthorizationNode node)
 {
     var container = StructureMapContainerFacility.GetBasicFubuContainer();
     return container.GetInstance<AuthorizationBehavior>(new ObjectDefInstance(node.As<IContainerModel>().ToObjectDef(DiagnosticLevel.None)));
 }
 private AuthorizationBehavior toBehavior(AuthorizationNode node)
 {
     var container = StructureMapContainerFacility.GetBasicFubuContainer();
     return container.GetInstance<AuthorizationBehavior>(new ObjectDefInstance(node.ToObjectDef()));
 }
        public void use_no_custom_auth_failure_handler()
        {
            var node = new AuthorizationNode();
            var def = node.As<IContainerModel>().ToObjectDef();

            def.DependencyFor<IAuthorizationFailureHandler>().ShouldBeNull();
        }
        public void use_custom_failure_handler_by_value()
        {
            var node = new AuthorizationNode();

            var handler = new FakeAuthHandler();

            node.FailureHandler(handler);

            var def = node.As<IContainerModel>().ToObjectDef();

            def.DependencyFor<IAuthorizationFailureHandler>().ShouldBeOfType<ConfiguredDependency>()
                .Definition.Value.ShouldBeTheSameAs(handler);
        }
        public void use_custom_auth_failure_handler_by_type()
        {
            var node = new AuthorizationNode();
            node.FailureHandler<FakeAuthHandler>();

            var def = node.As<IContainerModel>().ToObjectDef();

            def.DependencyFor<IAuthorizationFailureHandler>().ShouldBeOfType<ConfiguredDependency>()
                .Definition.Type.ShouldEqual(typeof (FakeAuthHandler));
        }