public void Configure_AddsSharedPagesDirectoryToAreaViewLocationFormats()
        {
            // Arrange
            var expected = new[]
            {
                "/Areas/{2}/Views/{1}/{0}.cshtml",
                "/Areas/{2}/Views/Shared/{0}.cshtml",
                "/Views/Shared/{0}.cshtml",
                "/PagesRoot/Shared/{0}.cshtml",
            };

            var razorPagesOptions = new RazorPagesOptions
            {
                RootDirectory = "/PagesRoot",
            };
            var viewEngineOptions = GetViewEngineOptions();
            var setup             = new RazorPagesRazorViewEngineOptionsSetup(
                Options.Create(razorPagesOptions));

            // Act
            setup.Configure(viewEngineOptions);

            // Assert
            Assert.Equal(expected, viewEngineOptions.AreaViewLocationFormats);
        }
        public void Configure_WithCustomRoots_AddsAreaPageViewLocationFormats()
        {
            // Arrange
            var expected = new[]
            {
                "/Features/{2}/RazorFiles/{1}/{0}.cshtml",
                "/Features/{2}/RazorFiles/Shared/{0}.cshtml",
                "/Features/{2}/Views/Shared/{0}.cshtml",
                "/RazorFiles/Shared/{0}.cshtml",
                "/Views/Shared/{0}.cshtml",
            };

            var razorPagesOptions = new RazorPagesOptions
            {
                AreaRootDirectory = "/Features",
                RootDirectory     = "/RazorFiles/",
            };
            var viewEngineOptions = GetViewEngineOptions();
            var setup             = new RazorPagesRazorViewEngineOptionsSetup(
                Options.Create(razorPagesOptions));

            // Act
            setup.Configure(viewEngineOptions);

            // Assert
            Assert.Equal(expected, viewEngineOptions.AreaPageViewLocationFormats);
        }
        public void Configure_RegistersPageViewLocationExpander()
        {
            // Arrange
            var viewEngineOptions = GetViewEngineOptions();
            var setup             = new RazorPagesRazorViewEngineOptionsSetup(Options.Create(new RazorPagesOptions()));

            // Act
            setup.Configure(viewEngineOptions);

            // Assert
            Assert.Collection(
                viewEngineOptions.ViewLocationExpanders,
                expander => Assert.IsType <PageViewLocationExpander>(expander));
        }
        public void Configure_AddsPageViewLocationFormats_WithDefaultPagesRoot()
        {
            // Arrange
            var expected = new[]
            {
                "/Pages/{1}/{0}.cshtml",
                "/Pages/Shared/{0}.cshtml",
                "/Views/Shared/{0}.cshtml",
            };

            var razorPagesOptions = new RazorPagesOptions();
            var viewEngineOptions = GetViewEngineOptions();
            var setup             = new RazorPagesRazorViewEngineOptionsSetup(
                Options.Create(razorPagesOptions));

            // Act
            setup.Configure(viewEngineOptions);

            // Assert
            Assert.Equal(expected, viewEngineOptions.PageViewLocationFormats);
        }
Beispiel #5
0
        public void Configure_AddsPageViewLocationFormats_WhenPagesRootIsAppRoot()
        {
            // Arrange
            var expected = new[]
            {
                "/{1}/{0}.cshtml",
                "/Shared/{0}.cshtml",
                "/Views/Shared/{0}.cshtml",
            };

            var razorPagesOptions = new RazorPagesOptions
            {
                RootDirectory = "/"
            };
            var viewEngineOptions = GetViewEngineOptions();
            var setup             = new RazorPagesRazorViewEngineOptionsSetup(
                new TestOptionsManager <RazorPagesOptions>(razorPagesOptions));

            // Act
            setup.Configure(viewEngineOptions);

            // Assert
            Assert.Equal(expected, viewEngineOptions.PageViewLocationFormats);
        }