コード例 #1
0
        public void IsController_OpenGenericClass()
        {
            // Arrange
            var builder  = new AccessibleControllerModelBuilder();
            var typeInfo = typeof(OpenGenericController <>).GetTypeInfo();

            // Act
            var isController = builder.IsController(typeInfo);

            // Assert
            Assert.False(isController);
        }
コード例 #2
0
        public void IsController_Interface()
        {
            // Arrange
            var builder  = new AccessibleControllerModelBuilder();
            var typeInfo = typeof(IController).GetTypeInfo();

            // Act
            var isController = builder.IsController(typeInfo);

            // Assert
            Assert.False(isController);
        }
コード例 #3
0
        public void IsController_DerivedAbstractClass()
        {
            // Arrange
            var builder  = new AccessibleControllerModelBuilder();
            var typeInfo = typeof(DerivedAbstractController).GetTypeInfo();

            // Act
            var isController = builder.IsController(typeInfo);

            // Assert
            Assert.True(isController);
        }
コード例 #4
0
        public void IsController_FrameworkControllerClass()
        {
            // Arrange
            var builder  = new AccessibleControllerModelBuilder();
            var typeInfo = typeof(Controller).GetTypeInfo();

            // Act
            var isController = builder.IsController(typeInfo);

            // Assert
            Assert.False(isController);
        }
コード例 #5
0
        public void IsController_UserDefinedControllerClass()
        {
            // Arrange
            var builder  = new AccessibleControllerModelBuilder();
            var typeInfo = typeof(DefaultControllerModelBuilderTestControllers.Controller).GetTypeInfo();

            // Act
            var isController = builder.IsController(typeInfo);

            // Assert
            Assert.False(isController);
        }
コード例 #6
0
        public void IsController_NoControllerSuffix()
        {
            // Arrange
            var builder  = new AccessibleControllerModelBuilder();
            var typeInfo = typeof(NoSuffix).GetTypeInfo();

            // Act
            var isController = builder.IsController(typeInfo);

            // Assert
            Assert.True(isController);
        }
コード例 #7
0
        public void BuildControllerModel_ClassWithFilterInterfaces_UnsupportedType()
        {
            // Arrange
            var builder  = new AccessibleControllerModelBuilder();
            var typeInfo = typeof(UnsupportedFiltersController).GetTypeInfo();

            // Act
            var model = builder.BuildControllerModel(typeInfo);

            // Assert
            Assert.Empty(model.Filters);
        }
コード例 #8
0
        public void IsController_UserDefinedClass()
        {
            // Arrange
            var builder  = new AccessibleControllerModelBuilder();
            var typeInfo = typeof(StoreController).GetTypeInfo();

            // Act
            var isController = builder.IsController(typeInfo);

            // Assert
            Assert.True(isController);
        }
コード例 #9
0
        public void IsController_Poco_WithNamingConvention()
        {
            // Arrange
            var builder  = new AccessibleControllerModelBuilder();
            var typeInfo = typeof(PocoController).GetTypeInfo();

            // Act
            var isController = builder.IsController(typeInfo);

            // Assert
            Assert.True(isController);
        }
コード例 #10
0
        public void BuildControllerModel_ClassWithFilterInterfaces_HasFilter()
        {
            // Arrange
            var builder  = new AccessibleControllerModelBuilder();
            var typeInfo = typeof(SomeFiltersController).GetTypeInfo();

            // Act
            var model = builder.BuildControllerModel(typeInfo);

            // Assert
            Assert.Single(model.Filters, f => f is ControllerActionFilter);
            Assert.Single(model.Filters, f => f is ControllerResultFilter);
        }
コード例 #11
0
        public void BuildControllerModel_ClassWithoutFilterInterfaces_HasNoControllerFilter()
        {
            // Arrange
            var builder  = new AccessibleControllerModelBuilder();
            var typeInfo = typeof(NoFiltersController).GetTypeInfo();

            // Act
            var model = builder.BuildControllerModel(typeInfo);

            // Assert
            var filter = Assert.Single(model.Filters);

            Assert.IsType <ProducesAttribute>(filter);
        }
コード例 #12
0
        public void BuildControllerModel_DerivedFromControllerClass_HasFilter()
        {
            // Arrange
            var builder  = new AccessibleControllerModelBuilder();
            var typeInfo = typeof(StoreController).GetTypeInfo();

            // Act
            var model = builder.BuildControllerModel(typeInfo);

            // Assert
            var filter = Assert.Single(model.Filters);

            Assert.IsType <ControllerActionFilter>(filter);
        }