コード例 #1
0
        public void Delete_ThumbnailOptionIds_DeletedThumbnailTasksWithPassedIds()
        {
            var taskEntities = ThumbnailTaskEntitysDataSource.ToList();

            var ids = taskEntities.Select(t => t.Id).ToArray();

            var mock = new Mock <IThumbnailRepository>();

            mock.SetupGet(x => x.UnitOfWork).Returns(new Mock <IUnitOfWork>().Object);
            mock.Setup(r => r.RemoveThumbnailTasksByIds(It.IsIn <string[]>(ids))).Callback(
                (string[] arr) =>
            {
                var entities = taskEntities.Where(e => arr.Contains(e.Id)).ToList();
                foreach (var entity in entities)
                {
                    taskEntities.Remove(entity);
                }
            });

            var sut = new ThumbnailTaskService(() => mock.Object);

            sut.RemoveByIds(ids);

            Assert.Empty(taskEntities);
        }
コード例 #2
0
        public void Search_ThumbnailOptionSearchCriteria_ReturnsGenericSearchResponseOfTasksInExpectedOrder()
        {
            var repoMock = GetTaskRepositoryMock();
            var target   = new ThumbnailTaskSearchService(() => repoMock.Object);
            var criteria = new ThumbnailTaskSearchCriteria {
                Sort = "Name:desc;WorkPath:desc"
            };
            var resultTasks = target.SearchAsync(criteria);

            var expectedTasks = ThumbnailTaskEntitysDataSource.Select(x => x.ToModel(new ThumbnailTask())).OrderByDescending(t => t.Name).ThenByDescending(t => t.WorkPath).ToArray();

            Assert.Equal(expectedTasks, resultTasks.Result.Results);
        }
コード例 #3
0
        public void Search_SearchByExistingKeyword_TasksFound()
        {
            var keyword  = "NameLong";
            var repoMock = GetTaskRepositoryMock();
            var target   = new ThumbnailTaskSearchService(() => repoMock.Object);

            var resultTasks = target.SearchAsync(new ThumbnailTaskSearchCriteria {
                Keyword = keyword
            });

            var count = ThumbnailTaskEntitysDataSource.Count(x => x.Name.Contains(keyword));

            Assert.Equal(resultTasks.Result.Results.Count(), count);
        }
コード例 #4
0
        public Mock <IThumbnailRepository> GetTaskRepositoryMock()
        {
            var entites             = ThumbnailTaskEntitysDataSource.ToList();
            var entitesQuerableMock = TestUtils.CreateQuerableMock(entites);
            var repoMock            = new Mock <IThumbnailRepository>();

            repoMock.Setup(x => x.ThumbnailTasks).Returns(entitesQuerableMock.Object);

            repoMock.Setup(x => x.GetThumbnailTasksByIdsAsync(It.IsAny <string[]>()).Result)
            .Returns((string[] ids) =>
            {
                return(entitesQuerableMock.Object.Where(t => ids.Contains(t.Id)).ToArray());
            });

            return(repoMock);
        }
        public Mock <IThumbnailRepository> GetOptionsRepositoryMock()
        {
            var entities = ThumbnailTaskEntitysDataSource.ToList();
            var entitiesQueryableMock = entities.AsQueryable().BuildMock();
            var repoMock = new Mock <IThumbnailRepository>();

            repoMock.Setup(x => x.ThumbnailOptions).Returns(entitiesQueryableMock.Object);

            repoMock.Setup(x => x.GetThumbnailOptionsByIdsAsync(It.IsAny <string[]>()))
            .Returns((string[] ids) =>
            {
                return(Task.FromResult(entitiesQueryableMock.Object.Where(t => ids.Contains(t.Id)).ToArray()));
            });

            return(repoMock);
        }
コード例 #6
0
        public void GetByIds_ArrayOfIdis_ReturnsArrayOfThumbnailTasksWithPassedIds()
        {
            var taskEntities = ThumbnailTaskEntitysDataSource.ToArray();

            var ids   = taskEntities.Select(t => t.Id).ToArray();
            var tasks = taskEntities.Select(t => t.ToModel(new ThumbnailTask())).ToArray();

            var mock = new Mock <IThumbnailRepository>();

            mock.SetupGet(x => x.UnitOfWork).Returns(new Mock <IUnitOfWork>().Object);
            mock.Setup(r => r.GetThumbnailTasksByIds(It.IsIn <string[]>(ids)))
            .Returns(taskEntities.Where(t => ids.Contains(t.Id)).ToArray());

            var sut    = new ThumbnailTaskService(() => mock.Object);
            var result = sut.GetByIds(ids);

            Assert.Equal(result, tasks);
        }