public void TryGetPageDirective_NoQuotesAroundPath_LogsWarning() { // Arrange var expected = "The page directive at 'Test.cshtml' is malformed. Please fix the following issues: The 'page' directive expects a string surrounded by double quotes."; var sink = new TestSink(); var logger = new TestLogger("logger", sink, enabled: true); var projectItem = new TestRazorProjectItem(@"@page Some/Path/{value}"); // Act & Assert Assert.True(PageDirectiveFeature.TryGetPageDirective(logger, projectItem, out var template)); Assert.Null(template); var logs = sink.Writes.Select(w => w.State.ToString().Trim()).ToList(); Assert.Collection(sink.Writes, log => { Assert.Equal(LogLevel.Warning, log.LogLevel); Assert.Equal(expected, log.State.ToString()); }); }