Exemplo n.º 1
0
        public Task ProcessTask(ConvertImgTask task)
        {
            var image = _imgRepository.GetImg(task.ImgId);

            var resultImg = task.Execute(image);

            var newProgress = ImgTaskProgress.FromTask(task);

            newProgress.ImgTaskState = ImgTaskState.Completed;

            _imgTaskProgress.UpdateTaskProgress(newProgress);

            var taskResult = ImgTaskResult.FromTask(task, resultImg.ImageStream, resultImg.Extension);

            _imgTaskResultRepository.UpdateTaskResult(taskResult);

            return(Task.CompletedTask);
        }
Exemplo n.º 2
0
        public void UpdateTaskResult_when_task_exists_updates_it()
        {
            var groupId = Guid.NewGuid();
            var taskId  = Guid.NewGuid();
            var mapper  = _container.Resolve <IMapper>();


            var result = new ImgTaskResult(taskId, groupId, null, null);

            _dbContext.DbImgTaskResult.Add(mapper.Map <ImgTaskResult, DbImgTaskResult>(result));
            _dbContext.SaveChanges();


            var updated = new ImgTaskResult(taskId, groupId, new MemoryStream(new byte[] { 1, 2, 3 }), "png");

            _imgTaskResultRepository.UpdateTaskResult(updated);


            var foundResult = _dbContext.DbImgTaskResult.Find(groupId, taskId);

            foundResult.Image.Length.Should().Be(3);
            foundResult.Should().BeEquivalentTo(updated,
                                                options => { return(options.Excluding(taskResult => taskResult.ImgStream)); });
        }