Release prep #267
GitHub Actions / Test Results (macos-latest)
succeeded
Sep 26, 2023 in 1s
Test Results (macos-latest) ✅
Report | Passed | Failed | Skipped | Time |
---|---|---|---|---|
Statiq.Web/tests/Statiq.Web.Hosting.Tests/TestResults/test-results.trx | 22✅ | 9s | ||
Statiq.Web/tests/Statiq.Web.Tests/TestResults/test-results.trx | 254✅ | 156s |
✅ Statiq.Web/tests/Statiq.Web.Hosting.Tests/TestResults/test-results.trx
22 tests were completed in 9s with 22 passed, 0 failed and 0 skipped.
Test suite | Passed | Failed | Skipped | Time |
---|---|---|---|---|
Statiq.Web.Hosting.Tests.Middleware.DefaultExtensionsMiddlewareTests | 4✅ | 2s | ||
Statiq.Web.Hosting.Tests.Middleware.DisableCacheMiddlewareTests | 1✅ | 24ms | ||
Statiq.Web.Hosting.Tests.Middleware.ScriptInjectionMiddlewareTests | 4✅ | 156ms | ||
Statiq.Web.Hosting.Tests.Middleware.VirtualDirectoryMiddlewareTests | 9✅ | 107ms | ||
Statiq.Web.Hosting.Tests.ServerTests | 4✅ | 790ms |
✅ Statiq.Web.Hosting.Tests.Middleware.DefaultExtensionsMiddlewareTests
✅ DoesNotReturnsFileWithNonDefaultExtension
✅ ReturnsFileWithCustomExtensionWithDot
✅ ReturnsFileWithCustomExtensionWithoutDot
✅ ReturnsFileWithDefaultExtension
✅ Statiq.Web.Hosting.Tests.Middleware.DisableCacheMiddlewareTests
✅ AddsCacheHeaders
✅ Statiq.Web.Hosting.Tests.Middleware.ScriptInjectionMiddlewareTests
✅ ShouldInjectScriptAtCorrectLocation("BasicHtmlDocument.html","<script type=\"text/javascript\" src=\"/livereload.js\"></script></body>",133)
✅ ShouldInjectScriptAtCorrectLocation("BasicHtmlDocumentNoBody.html","<script type=\"text/javascript\" src=\"/livereload.js\"></script></html>",130)
✅ ShouldInjectScriptAtCorrectLocation("BasicHtmlDocumentNoHtml.html","<script type=\"text/javascript\" src=\"/livereload.js\"></script>",77)
✅ ShouldNotInjectNonHtmlContent
✅ Statiq.Web.Hosting.Tests.Middleware.VirtualDirectoryMiddlewareTests
✅ DoesNotGetFileNotUnderVirtualDirectory
✅ GetsFileUnderVirtualDirectory("/foo")
✅ GetsFileUnderVirtualDirectory("/foo/")
✅ GetsFileUnderVirtualDirectory("/foo/bar")
✅ GetsFileUnderVirtualDirectory("/foo/bar/")
✅ GetsFileUnderVirtualDirectory("foo")
✅ GetsFileUnderVirtualDirectory("foo/")
✅ GetsFileUnderVirtualDirectory("foo/bar")
✅ GetsFileUnderVirtualDirectory("foo/bar/")
✅ Statiq.Web.Hosting.Tests.ServerTests
✅ ServerShouldAcceptRequestsFrom127001
✅ ServerShouldAcceptRequestsFromLocalhost
✅ ServerShouldBindOnConstructionWithoutUrlReservations
✅ ServerShouldBindOnStartWithoutUrlReservations
✅ Statiq.Web/tests/Statiq.Web.Tests/TestResults/test-results.trx
254 tests were completed in 156s with 254 passed, 0 failed and 0 skipped.
✅ Statiq.Web.Tests.Analyzers.Html.Analyzers.ValidateAbsoluteLinksFixture+AnalyzeTests
✅ CanValidateRelativeLinkWithAbsoluteBaseUri
✅ DoesNotThrowForInvalidLink
✅ DoesNotValidateMailToLinks("mailto:[email protected]")
✅ DoesNotValidateMailToLinks("mailto:foo@bar.com")
✅ ValidatesAbsoluteLink(False)
✅ ValidatesAbsoluteLink(True)
✅ Statiq.Web.Tests.Analyzers.Html.Analyzers.ValidateRelativeLinksFixture+AnalyzeTests
✅ CanValidateAscendingRelativeLink("../foobar.html",False)
✅ CanValidateAscendingRelativeLink("../target.html?query=parameter",True)
✅ CanValidateAscendingRelativeLink("../target.html?query=parameter#fragment",True)
✅ CanValidateAscendingRelativeLink("../target.html",True)
✅ CanValidateAscendingRelativeLink("../target.html#fragment",True)
✅ CanValidateExtensionlessLinks("../foo/target",True)
✅ CanValidateExtensionlessLinks("../target",False)
✅ CanValidateExtensionlessLinks("/foo/target",True)
✅ CanValidateExtensionlessLinks("/target",False)
✅ CanValidateExtensionlessLinks("foo/target",False)
✅ CanValidateExtensionlessLinks("target",False)
✅ CanValidateIndexLinks("../foo",True)
✅ CanValidateIndexLinks("../foo/index.html",True)
✅ CanValidateIndexLinks("../foo/index",True)
✅ CanValidateIndexLinks("../index.html",False)
✅ CanValidateIndexLinks("../index",False)
✅ CanValidateIndexLinks("/",True)
✅ CanValidateIndexLinks("/foo.html",False)
✅ CanValidateIndexLinks("/foo",True)
✅ CanValidateIndexLinks("/foo/index.html",True)
✅ CanValidateIndexLinks("/foo/index",True)
✅ CanValidateIndexLinks("/index.html",False)
✅ CanValidateIndexLinks("/index",False)
✅ CanValidateIndexLinks("foo",False)
✅ CanValidateIndexLinks("foo/index.html",False)
✅ CanValidateIndexLinks("foo/index",False)
✅ CanValidateIndexLinks("index.html",False)
✅ CanValidateIndexLinks("index",False)
✅ CanValidateRelativeLinkWithBaseUri("","/test/document.html","nested/target.html",False)
✅ CanValidateRelativeLinkWithBaseUri("/","/test/document.html","nested/target.html",True)
✅ CanValidateRelativeLinkWithBaseUri("/foobar","/document.html","target.html",False)
✅ CanValidateRelativeLinkWithBaseUri("/foobar","/test/document.html","target.html",False)
✅ CanValidateRelativeLinkWithBaseUri("/foobar/","/document.html","target.html",False)
✅ CanValidateRelativeLinkWithBaseUri("/foobar/","/test/document.html","target.html",False)
✅ CanValidateRelativeLinkWithBaseUri("/nested","/document.html","target.html",True)
✅ CanValidateRelativeLinkWithBaseUri("/nested","/test/document.html","target.html",True)
✅ CanValidateRelativeLinkWithBaseUri("/nested/","/document.html","target.html",True)
✅ CanValidateRelativeLinkWithBaseUri("/nested/","/test/document.html","target.html",True)
✅ CanValidateRelativeLinkWithBaseUri("foobar","/document.html","target.html",False)
✅ CanValidateRelativeLinkWithBaseUri("foobar","/test/document.html","target.html",False)
✅ CanValidateRelativeLinkWithBaseUri("foobar/","/document.html","target.html",False)
✅ CanValidateRelativeLinkWithBaseUri("foobar/","/test/document.html","target.html",False)
✅ CanValidateRelativeLinkWithBaseUri("nested","/document.html","target.html",True)
✅ CanValidateRelativeLinkWithBaseUri("nested","/test/document.html","target.html",False)
✅ CanValidateRelativeLinkWithBaseUri("nested/","/document.html","target.html",True)
✅ CanValidateRelativeLinkWithBaseUri("nested/","/test/document.html","target.html",False)
✅ CanValidateRelativeLinkWithLinkRoot("../../link-root/foo/target.html",True)
✅ CanValidateRelativeLinkWithLinkRoot("../foo/target.html",True)
✅ CanValidateRelativeLinkWithLinkRoot("../link-root/foo/target.html",False)
✅ CanValidateRelativeLinkWithLinkRoot("../target.html",False)
✅ CanValidateRelativeLinkWithLinkRoot("/link-root/foo/target.html",True)
✅ CanValidateRelativeLinkWithLinkRoot("/link-root/target.html",False)
✅ CanValidateRelativeLinkWithLinkRoot("link-root/foo/target.html",False)
✅ CanValidateRelativeLinkWithLinkRoot("link-root/target.html",False)
✅ DoesNotValidateHash("#","/document.html",True)
✅ DoesNotValidateHash("#","/foo/document.html",True)
✅ DoesNotValidateHash("#foo","/document.html",True)
✅ DoesNotValidateHash("#foo","/foo/document.html",True)
✅ DoesNotValidateHash("target#foo","/document.html",True)
✅ DoesNotValidateHash("target#foo","/foo/document.html",False)
✅ DoesNotValidateHash("target2#foo","/document.html",False)
✅ DoesNotValidateHash("target2#foo","/foo/document.html",False)
✅ DoesNotValidateMailToLinks("mailto:[email protected]")
✅ DoesNotValidateMailToLinks("mailto:foo@bar.com")
✅ DoesNotValidateQueryString("?","/document.html",True)
✅ DoesNotValidateQueryString("?","/foo/document.html",True)
✅ DoesNotValidateQueryString("?#bar","/document.html",True)
✅ DoesNotValidateQueryString("?#bar","/foo/document.html",True)
✅ DoesNotValidateQueryString("?foo","/document.html",True)
✅ DoesNotValidateQueryString("?foo","/foo/document.html",True)
✅ DoesNotValidateQueryString("?foo#bar","/document.html",True)
✅ DoesNotValidateQueryString("?foo#bar","/foo/document.html",True)
✅ DoesNotValidateQueryString("target?foo","/document.html",True)
✅ DoesNotValidateQueryString("target?foo","/foo/document.html",False)
✅ DoesNotValidateQueryString("target?foo#bar","/document.html",True)
✅ DoesNotValidateQueryString("target?foo#bar","/foo/document.html",False)
✅ DoesNotValidateQueryString("target2?foo","/document.html",False)
✅ DoesNotValidateQueryString("target2?foo","/foo/document.html",False)
✅ DoesNotValidateQueryString("target2?foo#bar","/document.html",False)
✅ DoesNotValidateQueryString("target2?foo#bar","/foo/document.html",False)
✅ HandlesEscapedUnicode
✅ HandlesSpecialCharacters("targ%C3%ABt")
✅ HandlesSpecialCharacters("targët")
✅ Statiq.Web.Tests.Bootstrapper.BootstrapperExtensionsFixture+AddSettingTests
✅ CommandLineShouldOverrideSettingsInputPaths
✅ ShouldAddInputPaths
✅ Statiq.Web.Tests.Bootstrapper.BootstrapperExtensionsFixture+AddThemePathTests
✅ AddsThemePath
✅ Statiq.Web.Tests.Bootstrapper.BootstrapperExtensionsFixture+AddWebTests
✅ AddsDefaultThemeInputPath
✅ AddsThemeInputPaths
✅ SetsThemePathsFromSettings
✅ Statiq.Web.Tests.Bootstrapper.BootstrapperExtensionsFixture+SetThemePathTests
✅ SetsThemePath
✅ Statiq.Web.Tests.IExecutionContextXrefExtensionsFixture+GetXrefDocumentTests
✅ ThrowsForNoMatch
✅ Statiq.Web.Tests.IExecutionContextXrefExtensionsFixture+GetXrefLinkTests
✅ ThrowsForNoLink
✅ ThrowsForNoMatch
✅ Statiq.Web.Tests.IExecutionContextXrefExtensionsFixture+TryGetXrefDocumentTests
✅ DoesNotIncludeChildDocuments
✅ FindsXref
✅ FindXrefIsCaseInsensitive
✅ NullXrefDoesNotThrow
✅ ReturnsFalseForAmbiguousMatches
✅ ReturnsFalseForNoMatch
✅ Statiq.Web.Tests.IExecutionContextXrefExtensionsFixture+TryGetXrefLinkTests
✅ ReturnsFalseForNoLink
✅ ReturnsFalseForNoMatch
✅ ReturnsLink
✅ Statiq.Web.Tests.Modules.RenderContentPostProcessTemplatesFixture+ExecuteTests
✅ MakesRelativeLinksAbsolute
✅ MakesRelativeLinksRootRelative
✅ Statiq.Web.Tests.Modules.ResolveXrefsFixture+ExecuteTests
✅ PreservesFragment
✅ PreservesQuery
✅ PreservesQueryAndFragment
✅ ResolvesMatchingXref
✅ ReturnsInputDocumentForNoXref
✅ Statiq.Web.Tests.Pipelines.ArchivesFixture+ExecuteTests
✅ ArchiveKey
✅ ComputedArchiveKey
✅ ComputedOrder
✅ ComputedOrderAfterKeyedOrder
✅ ExcludesAssetContentType
✅ GeneratesArchiveWithChildren
✅ KeyedOrder
✅ ScriptArchive
✅ ScriptArchiveWithExtensionPrefix
✅ Statiq.Web.Tests.Pipelines.AssetsFixture+ExecuteTests
✅ ProcessesJsonSidecarFileWithDifferentExtension
✅ RemoveScriptExtensionIsFalse
✅ ReturnsMultipleDocuments
✅ ReturnsSingleDocument
✅ ReturnsStringContent
✅ SetsDestinationFromFrontMatter
✅ Statiq.Web.Tests.Pipelines.ContentFixture+ExecuteTests
✅ DefaultGatherHeadingsLevel
✅ DocumentGatherHeadingsLevelSetting
✅ ExcerptShouldNotDoubleEscapeEntities
✅ GlobalGatherHeadingsLevelSetting
✅ HtmlCommentFrontMatter
✅ HtmlDoesNotApplyLayout
✅ HtmlFragmentAppliesAlternateLayout
✅ HtmlFragmentAppliesAlternateLayoutModule
✅ HtmlFragmentAppliesLayout
✅ HtmlFragmentFileAppliesAlternateLayout
✅ HtmlFragmentFileAppliesAlternateLayoutModule
✅ HtmlFragmentFileAppliesLayout
✅ LayoutMetadata
✅ LayoutViewStart
✅ RazorCommentFrontMatter
✅ ScriptWithCsxExtensionAndMediaTypeReturnsMarkdownContent
✅ ScriptWithMarkdownExtensionReturnsMarkdownContent
✅ ScriptWithMdAndCsxExtensionReturnsMarkdownContent
✅ ShouldChangeMarkdownExtensionsViaSettings
✅ ShouldChangeMarkdownExtensionsViaTemplates
✅ ShouldHighlightCode
✅ ShouldNotHighlightCodeByDefault
✅ ShouldNotHighlightCodeForUnspecifiedLanguage
✅ Statiq.Web.Tests.Pipelines.DataFixture+ExecuteTests
✅ AddsDirectoryMetadata
✅ AddsLocalRecursiveDirectoryMetadata
✅ ClearsDataContentIfSet
✅ CloserMetadataOverridesDirectoryMetadata
✅ ContentOverridesSidecarFile
✅ DoesNotAddNonRecursiveDirectoryMetadata
✅ DoesNotApplyDirectoryMetadataIfSettingIsFalse
✅ DoesNotClearDataContentIfNotSet
✅ DoesNotReadUnderscoreFilesByDefault
✅ EnumeratesValues
✅ FiltersExcludedFiles
✅ FrontMatterOverridesDirectoryMetadata
✅ IncludesDocumentsFromDependencies
✅ JsonScriptReturn
✅ LocalMetadataOverridesDirectoryMetadata
✅ ParsesJson
✅ ParsesJsonWithFrontMatter
✅ ParsesYaml
✅ ParsesYamlWithFrontMatter
✅ ProcessesJsonSidecarFile
✅ SidecarFileWithAppendedExtension
✅ SidecarFileWithDifferentExtension
✅ Statiq.Web.Tests.Pipelines.FeedsFixture+ExecuteTests
✅ AllowsStringIds
✅ ExcludesAssetContentType
✅ ShouldSetCorrectFeedDescription("a","b","c","a")
✅ ShouldSetCorrectFeedDescription(null,"b","c","b")
✅ ShouldSetCorrectFeedDescription(null,null,"c","c")
✅ ShouldSetCorrectFeedTitle("a","b","c","a")
✅ ShouldSetCorrectFeedTitle(null,"b","c","b")
✅ ShouldSetCorrectFeedTitle(null,null,"c","c")
✅ ShouldSetCorrectFeedTitle(null,null,null,"Feed")
✅ ToggleFeedWithPath
✅ Statiq.Web.Tests.Pipelines.InputsFixture+ExecuteTests
✅ ShouldChangeDestinationOfStatiqFile
✅ ShouldExcludeUnderscoreFiles
✅ ShouldIncludeAdditionalInputFiles
✅ ShouldNotExcludeUnderscoreStatiqFiles
✅ ShouldProcessFrontMatterForStatiqFile
✅ ShouldRemoveStatiqFileExtension("/input/foo.statiq","foo")
✅ ShouldRemoveStatiqFileExtension("/input/foo.txt.statiq","foo.txt")
✅ ShouldSkipFrontMatterDelimiterInStatiqBodyFileWithEmptyFrontMatter
✅ Statiq.Web.Tests.Pipelines.RedirectsFixture+ExecuteTests
✅ GeneratesClientRedirects
✅ GeneratesNetlifyRedirects
✅ ShouldCombineAllNetlifyRedirects
✅ ShouldCombineWithExistingNetlifyFile
✅ ShouldGenerateNetlifyPrefixRedirectsByDefault
✅ ShouldGeneratePrefixRedirectForFile
✅ ShouldGeneratePrefixRedirectForNestedFile
✅ ShouldGenerateSinglePrefixRedirectForMultipleFiles
✅ ShouldNotGenerateNetlifyPrefixRedirects
✅ ShouldNotOutputNetlifyFileIfNoRedirects
✅ ShouldOnlyGenerateParentPrefixRedirect
✅ ShouldOutputExistingNetlifyFile
✅ ShouldRedirectedNestedPrefixFolder
✅ ShouldRedirectedNestedPrefixFolderWithNestedFile
✅ ShouldUseAlternateRedirectPrefix
✅ Statiq.Web.Tests.Pipelines.SearchIndexFixture+ExecuteTests
✅ ShouldGenerateIndexAtAlternatePath
✅ ShouldGenerateResultsAtAlternatePath
✅ ShouldGenerateScriptAtAlternatePath
✅ ShouldGenerateScriptAtDefaultPath
✅ ShouldNotGenerateSearchIndexByDefault
✅ ShouldNotZipIndexFile
✅ ShouldNotZipResultsFile
✅ Statiq.Web.Tests.Pipelines.SitemapFixture+ExecuteTests
✅ ExcludeFromSitemapWhenSpecified
✅ IncludeInSitemapByDefault
✅ IncludeInSitemapWhenSpecified
✅ Statiq.Web.Tests.Shortcodes.EmbedShortcodeFixture+ExecuteTests
✅ IssuesRequestToCorrectEndpoint
✅ Statiq.Web.Tests.Shortcodes.FigureShortcodeFixture+ExecuteTests
✅ DoesNotRenderLinkIfNoImage
✅ RendersFigure
✅ RendersFigureWithoutLink
✅ Statiq.Web.Tests.Shortcodes.GistShortcodeFixture+ExecuteTests
✅ RendersGist
✅ RendersGistWithoutFile
✅ RendersGistWithoutUsername
✅ Statiq.Web.Tests.Shortcodes.LinkShortcodeFixture+ExecuteTests
✅ RendersLink("//foo/bar","//foo/bar")
✅ RendersLink("/foo/bar","/foo/bar")
✅ RendersLink("foo/bar","/foo/bar")
✅ RendersLink("http://foo.com/bar","http://foo.com/bar")
✅ RendersLink("https://foo.com/bar","https://foo.com/bar")
✅ RendersLinkWithAlternateHost("//foo/bar","http://google.com//foo/bar")
✅ RendersLinkWithAlternateHost("/foo/bar","http://google.com/foo/bar")
✅ RendersLinkWithAlternateHost("foo/bar","http://google.com/foo/bar")
✅ RendersLinkWithAlternateHost("http://foo.com/bar","http://foo.com/bar")
✅ RendersLinkWithAlternateHost("https://foo.com/bar","https://foo.com/bar")
✅ RendersLinkWithHost("//foo/bar","http://domain.com//foo/bar")
✅ RendersLinkWithHost("/foo/bar","http://domain.com/foo/bar")
✅ RendersLinkWithHost("foo/bar","http://domain.com/foo/bar")
✅ RendersLinkWithHost("http://foo.com/bar","http://foo.com/bar")
✅ RendersLinkWithHost("https://foo.com/bar","https://foo.com/bar")
✅ ShouldPreserveTrailingSlashForHiddenPages("/a/b/index.html","/a/b","false")
✅ ShouldPreserveTrailingSlashForHiddenPages("/a/b/index.html","/a/b",null)
✅ ShouldPreserveTrailingSlashForHiddenPages("/a/b/index.html","/a/b/","true")
✅ ShouldRenderAbsoluteLink("index.html","/index.html","true")
✅ ShouldRenderAbsoluteLink("index.html","/index.html",null)
✅ ShouldRenderAbsoluteLink("index.html","index.html","false")
✅ Statiq.Web.Tests.Shortcodes.TableShortcodeFixture+ExecuteTests
✅ RendersTableWithoutSettings
✅ RendersTableWithSettings
✅ Statiq.Web.Tests.Themes.ThemeManagerFixture+AddPathsFromSettingsTests
✅ ShouldAddThemePathsBeforeBootstrapperInputPaths
✅ ShouldAddThemePathsBeforeCliInputPaths
✅ ShouldAddThemePathsBeforeDefaultInputPath
✅ ShouldAddThemePathsBeforeSettingsInputPaths
✅ ShouldAddThemePathsInCorrectOrder
✅ ShouldSetThemePath
Loading