Пример #1
0
        public void All_administration_controllers_have_an_authorize_attribute()
        {
            var adminControllerReport = new CollectionApprovalReport <Type>
            {
                Header = "Authorized admin controllers:",
                Body   = GetAdminControllers().WithAttribute <AuthorizeAttribute>()
            };

            var authorizeControllersReport = new CollectionApprovalReport <Type>
            {
                Header = "Controllers that need an authorize attribute:",
                Body   = GetAdminControllers().WithoutAttribute <AuthorizeAttribute>()
            };

            Approvals.Verify(adminControllerReport + Environment.NewLine + authorizeControllersReport);
        }
Пример #2
0
        public void Only_admin_controllers_should_have_an_authorize_attribute()
        {
            var adminControllers = GetAdminControllers();

            var adminControllerReport = new CollectionApprovalReport <Type>
            {
                Header = "Admin Controller Types:",
                Body   = adminControllers.WithAttribute <AuthorizeAttribute>()
            };

            var someonesStuffedUpReport = new CollectionApprovalReport <Type>
            {
                Header = "These should not be authorized!!!",
                Body   = GetTypesWithAttribute <AuthorizeAttribute>().Except(adminControllers)
            };

            Approvals.Verify(adminControllerReport + Environment.NewLine + someonesStuffedUpReport);
        }
Пример #3
0
        public void All_controllers_are_registered()
        {
            var controllerTypes = typeof(Controller)
                                  .Assembly
                                  .GetTypesWithBaseType <Controller>();

            var unregisteredTypes = new List <Type>();
            var registeredTypes   = new List <Type>();

            foreach (var controllerConfigurationType in controllerTypes)
            {
                try
                {
                    container.Resolve(controllerConfigurationType);

                    registeredTypes.Add(controllerConfigurationType);
                }
                catch (ComponentNotRegisteredException)
                {
                    unregisteredTypes.Add(controllerConfigurationType);
                }
            }

            var registeredReport = new CollectionApprovalReport <Type>
            {
                Header = "Successfully Registered:",
                Body   = registeredTypes
            };
            var unregisteredReport = new CollectionApprovalReport <Type>
            {
                Header = "Not Registered:",
                Body   = unregisteredTypes
            };

            Approvals.Verify(registeredReport + Environment.NewLine + unregisteredReport);
        }