Skip to content

feat(content): Add error handling + logging to content route #34

feat(content): Add error handling + logging to content route

feat(content): Add error handling + logging to content route #34

GitHub Actions / DotNET Tests succeeded Aug 28, 2024 in 1s

65 passed, 0 failed and 0 skipped

Tests passed successfully

✅ tests/Dfe.ContentSupport.Web.Tests/TestResults/test-results.trx

65 tests were completed in 5s with 65 passed, 0 failed and 0 skipped.

Test suite Passed Failed Skipped Time
Dfe.ContentSupport.Web.Tests.Controllers.CacheControllerTests 1✅ 396ms
Dfe.ContentSupport.Web.Tests.Controllers.ContentControllerTests 7✅ 1s
Dfe.ContentSupport.Web.Tests.Controllers.SitemapControllerTests 2✅ 146ms
Dfe.ContentSupport.Web.Tests.Exceptions.ContentNotFoundExceptionTests 1✅ 2ms
Dfe.ContentSupport.Web.Tests.Extensions.DateTimeExtensionsTests 1✅ 0ms
Dfe.ContentSupport.Web.Tests.Extensions.WebApplicationBuilderExtensionsTests 3✅ 2s
Dfe.ContentSupport.Web.Tests.Http.HttpContentfulClientTests 1✅ 816ms
Dfe.ContentSupport.Web.Tests.Http.StubHttpContentfulClientTests 1✅ 361ms
Dfe.ContentSupport.Web.Tests.Models.Mapped.Custom.CustomAccordionTests 1✅ 54ms
Dfe.ContentSupport.Web.Tests.Models.Mapped.Custom.CustomAttachmentTests 1✅ 3ms
Dfe.ContentSupport.Web.Tests.Models.Mapped.Custom.CustomCardTests 1✅ 2ms
Dfe.ContentSupport.Web.Tests.Models.Mapped.Custom.CustomGridContainerTests 1✅ 30ms
Dfe.ContentSupport.Web.Tests.Models.Mapped.Standard.CsTextTests 2✅ 28ms
Dfe.ContentSupport.Web.Tests.Models.Mapped.Standard.EmbeddedAssetTests 3✅ 3ms
Dfe.ContentSupport.Web.Tests.Models.Mapped.Standard.EmbeddedEntryTests 1✅ 1ms
Dfe.ContentSupport.Web.Tests.Models.Mapped.Standard.HyperlinkTests 2✅ 2ms
Dfe.ContentSupport.Web.Tests.Services.ContentfulServiceTests 1✅ 13ms
Dfe.ContentSupport.Web.Tests.Services.ContentServiceTests 15✅ 439ms
Dfe.ContentSupport.Web.Tests.Services.LayoutServiceTests 12✅ 347ms
Dfe.ContentSupport.Web.Tests.Services.ModelMapperTests 8✅ 4ms

✅ Dfe.ContentSupport.Web.Tests.Controllers.CacheControllerTests

✅ Clear_Calls_CacheClear

✅ Dfe.ContentSupport.Web.Tests.Controllers.ContentControllerTests

✅ Error_Returns_ErrorView
✅ Home_Returns_View
✅ Index_Calls_Service_GetContent
✅ Index_NoSlug_Returns_ErrorAction
✅ Index_NullResponse_ReturnsErrorAction
✅ Index_WithSlug_Returns_View
✅ Privacy_Returns_EmptyView

✅ Dfe.ContentSupport.Web.Tests.Controllers.SitemapControllerTests

✅ Sitemap_Calls_Returns_ContentResult_XmlModel
✅ Sitemap_Calls_Service_GenerateSitemap

✅ Dfe.ContentSupport.Web.Tests.Exceptions.ContentNotFoundExceptionTests

✅ Exception_Generates_Expected

✅ Dfe.ContentSupport.Web.Tests.Extensions.DateTimeExtensionsTests

✅ ToLongString_Formats_Returns_Expected

✅ Dfe.ContentSupport.Web.Tests.Extensions.WebApplicationBuilderExtensionsTests

✅ Builder_Contains_Correct_Services
✅ Builder_Default_Uses_DefaultClient
✅ Builder_E2e_Uses_MockClient

✅ Dfe.ContentSupport.Web.Tests.Http.HttpContentfulClientTests

✅ Client_Calls_Contentful_And_Bounce

✅ Dfe.ContentSupport.Web.Tests.Http.StubHttpContentfulClientTests

✅ Client_Get_MockContent

✅ Dfe.ContentSupport.Web.Tests.Models.Mapped.Custom.CustomAccordionTests

✅ MapCorrectly

✅ Dfe.ContentSupport.Web.Tests.Models.Mapped.Custom.CustomAttachmentTests

✅ MapCorrectly

✅ Dfe.ContentSupport.Web.Tests.Models.Mapped.Custom.CustomCardTests

✅ MapCorrectly

✅ Dfe.ContentSupport.Web.Tests.Models.Mapped.Custom.CustomGridContainerTests

✅ MapCorrectly

✅ Dfe.ContentSupport.Web.Tests.Models.Mapped.Standard.CsTextTests

✅ BoldMapsCorrectly
✅ NotBoldMapsCorrectly

✅ Dfe.ContentSupport.Web.Tests.Models.Mapped.Standard.EmbeddedAssetTests

✅ ImageMapsCorrectly
✅ UnknownMapsCorrectly
✅ VideoMapsCorrectly

✅ Dfe.ContentSupport.Web.Tests.Models.Mapped.Standard.EmbeddedEntryTests

✅ MapsCorrectly

✅ Dfe.ContentSupport.Web.Tests.Models.Mapped.Standard.HyperlinkTests

✅ IsVimeoMapsCorrectly
✅ NotVimeoMapsCorrectly

✅ Dfe.ContentSupport.Web.Tests.Services.ContentfulServiceTests

✅ ContentfulClient_Sets_IsPreview

✅ Dfe.ContentSupport.Web.Tests.Services.ContentServiceTests

✅ GenerateSitemap_Should_Generate_Expected
✅ GetContent_Calls_Cache_Correct_Key
✅ GetContent_Calls_Client_Once
✅ GetContent_EmptyResponse_Returns_Null
✅ GetContent_Returns_First_Result
✅ GetContentSupportPages_Calls_Cache_Correct_Key
✅ GetContentSupportPages_GotCache_Returns_Cache
✅ GetContentSupportPages_NotGotCache_AddsToCache
✅ GetContentSupportPages_NotGotCache_Calls_Client
✅ GetCsPage_Calls_Cache_Correct_Key
✅ GetCsPages_Calls_Client_Once
✅ GetCsPages_NotPreview_Calls_AddCache_Correct_Key
✅ GetCsPages_NotPreview_Calls_Cache_Correct_Key
✅ GetCsPages_Preview_Calls_AddCache_Correct_Key
✅ GetCsPages_Preview_Calls_Cache_Correct_Key

✅ Dfe.ContentSupport.Web.Tests.Services.LayoutServiceTests

✅ GenerateVerticalNavigation_PageNameDoesNotMatch_ReturnsMenuItemsWithFirstActive
✅ GenerateVerticalNavigation_PageNameMatches_ReturnsCorrectMenuItems
✅ GetHeading_PageDoesNotExist_ReturnsFirstPageHeading
✅ GetHeading_PageExists_ReturnsCorrectHeading
✅ GetNavigationUrl_EmptyUrl_ReturnsEmptyString
✅ GetNavigationUrl_ExactlyTwoSegments_ReturnsAllSegments
✅ GetNavigationUrl_FewerThanTwoSegments_ReturnsAllSegments
✅ GetNavigationUrl_MoreThanTwoSegments_ReturnsFirstTwoSegments
✅ GetVisiblePageList_ContentListIsEmpty_ReturnsEmptyList
✅ GetVisiblePageList_PageNameIsNullOrEmpty_ReturnsFirstItem
✅ GetVisiblePageList_PageNameProvidedAndDoesNotMatch_ReturnsEmptyList
✅ GetVisiblePageList_PageNameProvidedAndMatches_ReturnsMatchingItems

✅ Dfe.ContentSupport.Web.Tests.Services.ModelMapperTests

✅ BasicComponentReturned
✅ ConvertEntryToContentItem_IsRichText_Returns_RichTextContentItem
✅ ConvertEntryToContentItem_NotRichText_NotReturns_RichTextContentItem
✅ Document_Returns_Null
✅ MapRichTextNodes_NullNode_Returns_UnknownItem
✅ MapToCsPages_Return_Correct_Amount
✅ Unknown_Returns_Unknown
✅ UnknownCustom_Returns_Null