コード例 #1
0
        public async Task ExportAsync_WhenRedditSubredditIsWithoutBannerImageUrlAndWithoutHeaderImageUrl_ReturnsDashboardItemExportModelWithoutImageUrl()
        {
            IModelExporter <DashboardItemExportModel, IRedditSubreddit> sut = CreateSut();

            IRedditSubreddit         redditSubreddit = BuildRedditSubreddit();
            DashboardItemExportModel result          = await sut.ExportAsync(redditSubreddit);

            Assert.IsNotNull(result);
            Assert.IsNull(result.ImageUrl);
        }
コード例 #2
0
        public async Task ExportAsync_WhenCalled_ReturnsDashboardItemExportModelWithoutAuthor()
        {
            IModelExporter <DashboardItemExportModel, IRedditSubreddit> sut = CreateSut();

            IRedditSubreddit         redditSubreddit = BuildRedditSubreddit();
            DashboardItemExportModel result          = await sut.ExportAsync(redditSubreddit);

            Assert.IsNotNull(result);
            Assert.IsNull(result.Author);
        }
コード例 #3
0
        public async Task ExportAsync_WhenRedditLinkIsWithoutAuthor_ReturnsDashboardItemExportModelWithoutAuthor()
        {
            IModelExporter <DashboardItemExportModel, IRedditLink> sut = CreateSut();

            IRedditLink redditLink          = BuildRedditLink();
            DashboardItemExportModel result = await sut.ExportAsync(redditLink);

            Assert.IsNotNull(result);
            Assert.IsNull(result.Author);
        }
コード例 #4
0
        public async Task ExportAsync_WhenNewsIsWithoutAuthor_ReturnsDashboardItemExportModelWithoutAuthor()
        {
            IModelExporter <DashboardItemExportModel, INews> sut = CreateSut();

            INews news = BuildNews();
            DashboardItemExportModel result = await sut.ExportAsync(news);

            Assert.IsNotNull(result);
            Assert.IsNull(result.Author);
        }
コード例 #5
0
        public async Task ExportAsync_WhenRedditLinkIsWithoutImagesAndWithoutThumbnailUrl_ReturnsDashboardItemExportModelWithoutImageUrl()
        {
            IModelExporter <DashboardItemExportModel, IRedditLink> sut = CreateSut();

            IRedditLink redditLink          = BuildRedditLink();
            DashboardItemExportModel result = await sut.ExportAsync(redditLink);

            Assert.IsNotNull(result);
            Assert.IsNull(result.ImageUrl);
        }
コード例 #6
0
        public async Task ExportAsync_WhenCalled_ReturnsDashboardItemExportModelWithoutImageUrl()
        {
            IModelExporter <DashboardItemExportModel, IRedditAuthenticatedUser> sut = CreateSut();

            IRedditAuthenticatedUser redditAuthenticatedUser = BuildRedditAuthenticatedUser();
            DashboardItemExportModel result = await sut.ExportAsync(redditAuthenticatedUser);

            Assert.IsNotNull(result);
            Assert.IsNull(result.ImageUrl);
        }
コード例 #7
0
        public async Task ExportAsync_WhenCalled_AssertHandleAsyncWasNotCalledOnExceptionHandler()
        {
            IModelExporter <DashboardItemExportModel, IRedditAuthenticatedUser> sut = CreateSut();

            IRedditAuthenticatedUser redditAuthenticatedUser = BuildRedditAuthenticatedUser();
            DashboardItemExportModel result = await sut.ExportAsync(redditAuthenticatedUser);

            _exceptionHandlerMock.Verify(m => m.HandleAsync(It.IsAny <AggregateException>()), Times.Never);
            _exceptionHandlerMock.Verify(m => m.HandleAsync(It.IsAny <Exception>()), Times.Never);
        }
コード例 #8
0
        public async Task ExportAsync_WhenCalled_ReturnsDashboardItemExportModelWithoutImageUrl()
        {
            IModelExporter <DashboardItemExportModel, INews> sut = CreateSut();

            INews news = BuildNews();
            DashboardItemExportModel result = await sut.ExportAsync(news);

            Assert.IsNotNull(result);
            Assert.IsNull(result.ImageUrl);
        }
コード例 #9
0
        public async Task ExportAsync_WhenNewsIsWithDetails_ReturnsDashboardItemExportModelWithDetailsFromNews()
        {
            IModelExporter <DashboardItemExportModel, INews> sut = CreateSut();

            string details = Guid.NewGuid().ToString("D");
            INews  news    = BuildNews(details: details);
            DashboardItemExportModel result = await sut.ExportAsync(news);

            Assert.IsNotNull(result);
            Assert.AreEqual(details, result.Details);
        }
コード例 #10
0
        public async Task ExportAsync_WhenCalled_ReturnsDashboardItemExportModelWithInformationFromNews()
        {
            IModelExporter <DashboardItemExportModel, INews> sut = CreateSut();

            string information = Guid.NewGuid().ToString("D");
            INews  news        = BuildNews(information: information);
            DashboardItemExportModel result = await sut.ExportAsync(news);

            Assert.IsNotNull(result);
            Assert.AreEqual(information, result.Information);
        }
コード例 #11
0
        public async Task ExportAsync_WhenCalled_ReturnsDashboardItemExportModelWithTimestampFromNews()
        {
            IModelExporter <DashboardItemExportModel, INews> sut = CreateSut();

            DateTime timestamp = DateTime.Now.AddSeconds(_random.Next(300, 3600) * -1);
            INews    news      = BuildNews(timestamp: timestamp);
            DashboardItemExportModel result = await sut.ExportAsync(news);

            Assert.IsNotNull(result);
            Assert.AreEqual(timestamp, result.Timestamp);
        }
コード例 #12
0
        public async Task ExportAsync_WhenRedditSubredditIsWithDescriptionAsText_ReturnsDashboardItemExportModelWithDetailsFromRedditSubreddit()
        {
            IModelExporter <DashboardItemExportModel, IRedditSubreddit> sut = CreateSut();

            string                   descriptionAsText = Guid.NewGuid().ToString("D");
            IRedditSubreddit         redditSubreddit   = BuildRedditSubreddit(descriptionAsText: descriptionAsText);
            DashboardItemExportModel result            = await sut.ExportAsync(redditSubreddit);

            Assert.IsNotNull(result);
            Assert.AreEqual(descriptionAsText, result.Details);
        }
コード例 #13
0
        public async Task ExportAsync_WhenRedditLinkIsWithoutImagesAndWithThumbnailUrl_ReturnsDashboardItemExportModelWithImageUrlFromRedditLink()
        {
            IModelExporter <DashboardItemExportModel, IRedditLink> sut = CreateSut();

            Uri         thumbnailUrl        = new Uri($"http://localhost/{Guid.NewGuid().ToString("D")}/{Guid.NewGuid().ToString("D")}");
            IRedditLink redditLink          = BuildRedditLink(thumbnailUrl: thumbnailUrl);
            DashboardItemExportModel result = await sut.ExportAsync(redditLink);

            Assert.IsNotNull(result);
            Assert.AreEqual(thumbnailUrl.AbsoluteUri, result.ImageUrl);
        }
コード例 #14
0
        public async Task ExportAsync_WhenNewsIsWithLink_ReturnsDashboardItemExportModelWithSourceUrlFromNews()
        {
            IModelExporter <DashboardItemExportModel, INews> sut = CreateSut();

            Uri   link = new Uri($"http://localhost/{Guid.NewGuid().ToString("D")}/{Guid.NewGuid().ToString("D")}");
            INews news = BuildNews(link: link);
            DashboardItemExportModel result = await sut.ExportAsync(news);

            Assert.IsNotNull(result);
            Assert.AreEqual(link.AbsoluteUri, result.SourceUrl);
        }
コード例 #15
0
        public async Task ExportAsync_WhenRedditLinkIsWithSelftextAsText_ReturnsDashboardItemExportModelWithDetailsFromRedditLink()
        {
            IModelExporter <DashboardItemExportModel, IRedditLink> sut = CreateSut();

            string      selftextAsText      = Guid.NewGuid().ToString("D");
            IRedditLink redditLink          = BuildRedditLink(selftextAsText: selftextAsText);
            DashboardItemExportModel result = await sut.ExportAsync(redditLink);

            Assert.IsNotNull(result);
            Assert.AreEqual(selftextAsText, result.Details);
        }
コード例 #16
0
        public async Task ExportAsync_WhenCalled_ReturnsDashboardItemExportModelWithInformationFromRedditLink()
        {
            IModelExporter <DashboardItemExportModel, IRedditLink> sut = CreateSut();

            string      title               = Guid.NewGuid().ToString("D");
            IRedditLink redditLink          = BuildRedditLink(title: title);
            DashboardItemExportModel result = await sut.ExportAsync(redditLink);

            Assert.IsNotNull(result);
            Assert.AreEqual(title, result.Information);
        }
コード例 #17
0
        public async Task ExportAsync_WhenCalled_ReturnsDashboardItemExportModelWithIdentifierFromRedditLink()
        {
            IModelExporter <DashboardItemExportModel, IRedditLink> sut = CreateSut();

            string      fullName            = Guid.NewGuid().ToString("D");
            IRedditLink redditLink          = BuildRedditLink(fullName);
            DashboardItemExportModel result = await sut.ExportAsync(redditLink);

            Assert.IsNotNull(result);
            Assert.AreEqual(fullName, result.Identifier);
        }
コード例 #18
0
        public async Task ExportAsync_WhenRedditSubredditIsWithBannerImageUrl_ReturnsDashboardItemExportModelWithImageUrlFromRedditSubreddit()
        {
            IModelExporter <DashboardItemExportModel, IRedditSubreddit> sut = CreateSut();

            Uri bannerImageUrl = new Uri($"http://localhost/{Guid.NewGuid().ToString("D")}/{Guid.NewGuid().ToString("D")}");
            IRedditSubreddit         redditSubreddit = BuildRedditSubreddit(bannerImageUrl: bannerImageUrl);
            DashboardItemExportModel result          = await sut.ExportAsync(redditSubreddit);

            Assert.IsNotNull(result);
            Assert.AreEqual(bannerImageUrl.AbsoluteUri, result.ImageUrl);
        }
コード例 #19
0
        public async Task ExportAsync_WhenRedditLinkIsWithAuthor_ReturnsDashboardItemExportModelWithAuthorFromRedditLink()
        {
            IModelExporter <DashboardItemExportModel, IRedditLink> sut = CreateSut();

            string      author              = Guid.NewGuid().ToString("D");
            IRedditLink redditLink          = BuildRedditLink(author: author);
            DashboardItemExportModel result = await sut.ExportAsync(redditLink);

            Assert.IsNotNull(result);
            Assert.AreEqual(author, result.Author);
        }
コード例 #20
0
        public async Task ExportAsync_WhenRedditLinkIsWithEmptyImages_ReturnsDashboardItemExportModelWithoutImageUrl()
        {
            IModelExporter <DashboardItemExportModel, IRedditLink> sut = CreateSut();

            IEnumerable <IRedditImage> redditImageCollection = new List <IRedditImage>();
            IRedditLink redditLink          = BuildRedditLink(redditImageCollection: redditImageCollection);
            DashboardItemExportModel result = await sut.ExportAsync(redditLink);

            Assert.IsNotNull(result);
            Assert.IsNull(result.ImageUrl);
        }
コード例 #21
0
        public async Task ExportAsync_WhenCalled_ReturnsDashboardItemExportModelWithInformationFromRedditAuthenticatedUser()
        {
            IModelExporter <DashboardItemExportModel, IRedditAuthenticatedUser> sut = CreateSut();

            string userName = Guid.NewGuid().ToString("D");
            IRedditAuthenticatedUser redditAuthenticatedUser = BuildRedditAuthenticatedUser(userName: userName);
            DashboardItemExportModel result = await sut.ExportAsync(redditAuthenticatedUser);

            Assert.IsNotNull(result);
            Assert.AreEqual(userName, result.Information);
        }
コード例 #22
0
        public async Task ExportAsync_WhenRedditSubredditIsWithoutDescriptionAsTextAndWithoutPublicDescriptionAsText_ReturnsDashboardItemExportModelWithoutDetails()
        {
            IModelExporter <DashboardItemExportModel, IRedditSubreddit> sut = CreateSut();

            string                   title           = Guid.NewGuid().ToString("D");
            IRedditSubreddit         redditSubreddit = BuildRedditSubreddit(title: title);
            DashboardItemExportModel result          = await sut.ExportAsync(redditSubreddit);

            Assert.IsNotNull(result);
            Assert.IsNull(result.Details);
        }
コード例 #23
0
        public async Task ExportAsync_WhenCalled_ReturnsDashboardItemExportModelWithTimestampFromRedditAuthenticatedUser()
        {
            IModelExporter <DashboardItemExportModel, IRedditAuthenticatedUser> sut = CreateSut();

            DateTime createdTime = DateTime.Now.AddSeconds(_random.Next(300, 3600) * -1);
            IRedditAuthenticatedUser redditAuthenticatedUser = BuildRedditAuthenticatedUser(createdTime: createdTime);
            DashboardItemExportModel result = await sut.ExportAsync(redditAuthenticatedUser);

            Assert.IsNotNull(result);
            Assert.AreEqual(createdTime, result.Timestamp);
        }
コード例 #24
0
        public async Task ExportAsync_WhenRedditLinkIsWithRedditSubreddit_ReturnsDashboardItemExportModelWithProviderFromRedditLink()
        {
            IModelExporter <DashboardItemExportModel, IRedditLink> sut = CreateSut();

            string                   fullName        = Guid.NewGuid().ToString("D");
            IRedditSubreddit         redditSubreddit = BuildRedditSubreddit(fullName);
            IRedditLink              redditLink      = BuildRedditLink(redditSubreddit: redditSubreddit);
            DashboardItemExportModel result          = await sut.ExportAsync(redditLink);

            Assert.IsNotNull(result);
            Assert.AreEqual(fullName, result.Provider);
        }
コード例 #25
0
        public async Task ExportAsync_WhenNewsIsWithAuthor_ReturnsDashboardItemExportModelWithAuthorFromNews()
        {
            IModelExporter <DashboardItemExportModel, INews> sut = CreateSut();

            string  name   = Guid.NewGuid().ToString("D");
            IAuthor author = BuildAuthor(name);
            INews   news   = BuildNews(author: author);
            DashboardItemExportModel result = await sut.ExportAsync(news);

            Assert.IsNotNull(result);
            Assert.AreEqual(name, result.Author);
        }
コード例 #26
0
        public async Task ExportAsync_WhenRedditLinkIsWithNonEmptyImages_ReturnsDashboardItemExportModelWithImageUrlFromRedditLink()
        {
            IModelExporter <DashboardItemExportModel, IRedditLink> sut = CreateSut();

            Uri imageUrl = new Uri($"http://localhost/{Guid.NewGuid().ToString("D")}/{Guid.NewGuid().ToString("D")}");
            IEnumerable <IRedditImage> redditImageCollection = new List <IRedditImage>()
            {
                BuildRedditImage(imageUrl)
            };
            IRedditLink redditLink          = BuildRedditLink(redditImageCollection: redditImageCollection);
            DashboardItemExportModel result = await sut.ExportAsync(redditLink);

            Assert.IsNotNull(result);
            Assert.AreEqual(imageUrl.AbsoluteUri, result.ImageUrl);
        }