public void CreateRoute_UsesOrderPropertyWhenBuilding()
        {
            // Arrange
            int expectedOrder             = 123;
            RouteFactoryAttribute product = CreateProductUnderTest();

            product.Order = expectedOrder;

            int order = 0;
            IDirectRouteBuilder builder = null;

            builder = CreateBuilder(
                () =>
            {
                order = builder.Order;
                return(null);
            }
                );
            DirectRouteFactoryContext context = CreateContext((i) => builder);

            // Act
            RouteEntry ignore = product.CreateRoute(context);

            // Assert
            Assert.Equal(expectedOrder, order);
        }
        public void CreateRoute_UsesNamePropertyWhenBuilding()
        {
            // Arrange
            string expectedName           = "RouteName";
            RouteFactoryAttribute product = CreateProductUnderTest();

            product.Name = expectedName;

            string name = null;
            IDirectRouteBuilder builder = null;

            builder = CreateBuilder(
                () =>
            {
                name = builder.Name;
                return(null);
            }
                );
            DirectRouteFactoryContext context = CreateContext((i) => builder);

            // Act
            RouteEntry ignore = product.CreateRoute(context);

            // Assert
            Assert.Same(expectedName, name);
        }
        public void ConstraintsGet_ReturnsNull()
        {
            // Arrange
            RouteFactoryAttribute product = CreateProductUnderTest();

            // Act
            TRouteDictionary constraints = product.Constraints;

            // Assert
            Assert.Null(constraints);
        }
        public void OrderGet_ReturnsZero()
        {
            // Arrange
            RouteFactoryAttribute product = CreateProductUnderTest();

            // Act
            int order = product.Order;

            // Assert
            Assert.Equal(0, order);
        }
        public void NameGet_ReturnsNull()
        {
            // Arrange
            RouteFactoryAttribute product = CreateProductUnderTest();

            // Act
            string name = product.Name;

            // Assert
            Assert.Null(name);
        }
        public void TemplateGet_ReturnsSpecifiedInstance()
        {
            // Arrange
            string expectedTemplate       = "RouteTemplate";
            RouteFactoryAttribute product = CreateProductUnderTest(expectedTemplate);

            // Act
            string template = product.Template;

            // Assert
            Assert.Same(expectedTemplate, template);
        }