/// <summary> /// Initializes a new instance of the <see cref="RazorViewEngine" />. /// </summary> public RazorViewEngine( IRazorPageFactoryProvider pageFactory, IRazorPageActivator pageActivator, HtmlEncoder htmlEncoder, IOptions<RazorViewEngineOptions> optionsAccessor, ILoggerFactory loggerFactory) { _options = optionsAccessor.Value; if (_options.ViewLocationFormats.Count == 0) { throw new ArgumentException( Resources.FormatViewLocationFormatsIsRequired(nameof(RazorViewEngineOptions.ViewLocationFormats)), nameof(optionsAccessor)); } if (_options.AreaViewLocationFormats.Count == 0) { throw new ArgumentException( Resources.FormatViewLocationFormatsIsRequired(nameof(RazorViewEngineOptions.AreaViewLocationFormats)), nameof(optionsAccessor)); } _pageFactory = pageFactory; _pageActivator = pageActivator; _htmlEncoder = htmlEncoder; _logger = loggerFactory.CreateLogger<RazorViewEngine>(); ViewLookupCache = new MemoryCache(new MemoryCacheOptions { CompactOnMemoryPressure = false }); }
public void RazorViewEngineOptionsSetup_SetsPreprocessorSymbols(string environment, string expectedConfiguration) { // Arrange var options = new RazorViewEngineOptions(); var hostingEnv = new Mock<IHostingEnvironment>(); hostingEnv.SetupGet(e => e.EnvironmentName) .Returns(environment); var optionsSetup = new RazorViewEngineOptionsSetup(hostingEnv.Object); // Act optionsSetup.Configure(options); // Assert Assert.Equal(new[] { expectedConfiguration }, options.ParseOptions.PreprocessorSymbolNames); }
/// <summary> /// Initializes a new instance of the <see cref="RazorViewEngine" />. /// </summary> public MultiTemplateEngine( IRazorPageFactoryProvider pageFactory, IRazorPageActivator pageActivator, HtmlEncoder htmlEncoder, IOptions<RazorViewEngineOptions> optionsAccessor, ILoggerFactory loggerFactory) { _options = optionsAccessor.Value; _pageFactory = pageFactory; _pageActivator = pageActivator; _htmlEncoder = htmlEncoder; _logger = loggerFactory.CreateLogger<RazorViewEngine>(); ViewLookupCache = new MemoryCache(new MemoryCacheOptions { CompactOnMemoryPressure = false }); }
public void RazorViewEngineOptionsSetup_SetsOptimizationLevel( string environment, OptimizationLevel expectedOptimizationLevel) { // Arrange var options = new RazorViewEngineOptions(); var hostingEnv = new Mock<IHostingEnvironment>(); hostingEnv.SetupGet(e => e.EnvironmentName) .Returns(environment); var optionsSetup = new RazorViewEngineOptionsSetup(hostingEnv.Object); // Act optionsSetup.Configure(options); // Assert Assert.Equal(expectedOptimizationLevel, options.CompilationOptions.OptimizationLevel); }
public void RazorViewEngineOptionsSetup_SetsUpFileProvider() { // Arrange var options = new RazorViewEngineOptions(); var expected = Mock.Of<IFileProvider>(); var hostingEnv = new Mock<IHostingEnvironment>(); hostingEnv.SetupGet(e => e.ContentRootFileProvider) .Returns(expected); hostingEnv.SetupGet(e => e.EnvironmentName) .Returns("Development"); var optionsSetup = new RazorViewEngineOptionsSetup(hostingEnv.Object); // Act optionsSetup.Configure(options); // Assert var fileProvider = Assert.Single(options.FileProviders); Assert.Same(expected, fileProvider); }