public void ReturnsValidSunsetAndSunriseDateWhenDateInRange()
        {
            const string slug = "unit-test-article";

            _mockTimeProvider.Setup(o => o.Now()).Returns(new DateTime(2016, 08, 01));

            var rawArticle = new ContentfulArticleBuilder().Slug(slug).Build();

            _cache.Setup(o => o.GetFromCacheOrDirectlyAsync(It.Is <string>(s => s == $"article-{slug}"), It.IsAny <Func <Task <ContentfulArticle> > >(), It.Is <int>(s => s == 60))).ReturnsAsync(rawArticle);

            StockportContentApi.Http.HttpResponse response = AsyncTestHelper.Resolve(_repository.GetArticle("unit-test-article"));

            response.StatusCode.Should().Be(HttpStatusCode.OK);
        }
        public void Gets404ForNewsOutsideOfSunsetDate()
        {
            const string slug = "unit-test-article";

            _mockTimeProvider.Setup(o => o.Now()).Returns(new DateTime(2017, 08, 01));

            var collection = new ContentfulCollection <ContentfulStartPage>();
            var rawArticle = new ContentfulStartPageBuilder().Slug(slug).Build();

            collection.Items = new List <ContentfulStartPage>();

            _client.Setup(o => o.GetEntries <ContentfulStartPage>(It.IsAny <QueryBuilder <ContentfulStartPage> >(), It.IsAny <CancellationToken>())).ReturnsAsync(collection);

            StockportContentApi.Http.HttpResponse response = AsyncTestHelper.Resolve(_repository.GetStartPage("unit-test-article"));

            response.StatusCode.Should().Be(HttpStatusCode.NotFound);
        }