public async Task <AttachmentBurial> UpdateAsync(AttachmentBurial entity, CancellationToken cancellationToken)
        {
            db.AttachmentBurials.Update(entity);
            await db.SaveChangesAsync(cancellationToken);

            return(entity);
        }
Пример #2
0
        public async Task <ValidationModel <Burial> > InsertAsync(Burial newEntity, CancellationToken cancellationToken = default)
        {
            var validation = await burilValidation.InsertValidationAsync(newEntity, cancellationToken);

            if (!validation.IsValid)
            {
                return(validation);
            }

            newEntity.CreatedAt = DateTime.Now;
            newEntity.UpdatedAt = DateTime.Now;

            validation.Result = await dataBurial.InsertAsync(newEntity, cancellationToken);

            if (newEntity.Files is not null && !newEntity.Files.Count().Equals(0))
            {
                var fileDatas = await fileHelper.SaveFileRange(newEntity.Files);

                foreach (var file in fileDatas)
                {
                    var attachmentForm = new AttachmentBurial()
                    {
                        FilePath = file.FilePath,
                        FileName = file.FileName,
                        FileType = file.FileType,
                        BurialId = validation.Result.Id
                    };

                    await dataAttachmentBurial.InsertAsync(attachmentForm, cancellationToken);
                }
            }

            return(validation);
        }
        private void MockData(
            AttachmentBurial attachmentBurial = default,
            IEnumerable <AttachmentBurial> attachmentBurialList           = default,
            ValidationModel <AttachmentBurial> validationAttachmentBurial = default
            )
        {
            _fileHelper.Setup(x => x.SaveFile(It.IsAny <IFormFile>()))
            .ReturnsAsync(GetFileModelByAttachmentBurial(attachmentBurial));
            _fileHelper.Setup(x => x.SaveFileRange(It.IsAny <IList <IFormFile> >()))
            .ReturnsAsync(GetFileModelListByAttachmentBurial(attachmentBurialList));
            _fileHelper.Setup(x => x.DeleteFile(It.IsAny <string>()));

            _dataAttachmentBurial.Setup(x => x.GetAsync(It.IsAny <Guid>(), It.IsAny <CancellationToken>())).ReturnsAsync(attachmentBurial);
            _dataAttachmentBurial.Setup(x => x.GetAllAsync(It.IsAny <CancellationToken>())).ReturnsAsync(attachmentBurialList);
            _dataAttachmentBurial.Setup(x => x.InsertAsync(It.IsAny <AttachmentBurial>(), It.IsAny <CancellationToken>())).ReturnsAsync(attachmentBurial);
            _dataAttachmentBurial.Setup(x => x.UpdateAsync(It.IsAny <AttachmentBurial>(), It.IsAny <CancellationToken>())).ReturnsAsync(attachmentBurial);
            _dataAttachmentBurial.Setup(x => x.DeleteAsync(It.IsAny <Guid>(), It.IsAny <CancellationToken>()));

            _attachmentBurialValidation.Setup(x => x.GetValidationAsync(It.IsAny <Guid>(), It.IsAny <CancellationToken>())).ReturnsAsync(validationAttachmentBurial);
            _attachmentBurialValidation.Setup(x => x.InsertValidationAsync(It.IsAny <AttachmentBurial>(), It.IsAny <CancellationToken>())).ReturnsAsync(validationAttachmentBurial);
            _attachmentBurialValidation.Setup(x => x.UpdateValidationAsync(It.IsAny <AttachmentBurial>(), It.IsAny <CancellationToken>())).ReturnsAsync(validationAttachmentBurial);
            _attachmentBurialValidation.Setup(x => x.DeleteValidationAsync(It.IsAny <Guid>(), It.IsAny <CancellationToken>())).ReturnsAsync(validationAttachmentBurial);

            _service = new AttachmentBurialService(_fileHelper.Object, _dataAttachmentBurial.Object, _attachmentBurialValidation.Object);
        }
        public async Task UpdateValidationAsync_Null_UnSucces()
        {
            // Arrange
            MockData(
                isExsitAttachmentBurial: false,
                isExsitBurial: false
                );
            AttachmentBurial entity = null;
            var listError           = new Dictionary <string, string>()
            {
                { nameof(AttachmentBurial), string.Format(BaseValidation.ObjectNotCanBeNull, nameof(AttachmentBurial)) }
            };

            // Act
            var result = await _validation.UpdateValidationAsync(entity);

            // Assert
            Assert.Multiple(() =>
            {
                Assert.NotNull(result.Errors);
                Assert.IsNotEmpty(result.Errors);
                Assert.IsFalse(result.IsValid);
                foreach (var error in result.Errors)
                {
                    Assert.IsTrue(listError.ContainsKey(error.Key));
                    Assert.AreEqual(listError[error.Key], error.Value);
                }
            });
        }
Пример #5
0
        private void MockData(
            Burial burial = default,
            AttachmentBurial attachmentBurial = default,
            IEnumerable <Burial> burialList   = default,
            IEnumerable <AttachmentBurial> attachmentBurialList = default,
            ValidationModel <Burial> validationBurial           = default
            )
        {
            _dataBurial.Setup(x => x.GetAsync(It.IsAny <Guid>(), It.IsAny <CancellationToken>())).ReturnsAsync(burial);
            _dataBurial.Setup(x => x.GetAllAsync(It.IsAny <CancellationToken>())).ReturnsAsync(burialList);
            _dataBurial.Setup(x => x.InsertAsync(It.IsAny <Burial>(), It.IsAny <CancellationToken>())).ReturnsAsync(burial);
            _dataBurial.Setup(x => x.UpdateAsync(It.IsAny <Burial>(), It.IsAny <CancellationToken>())).ReturnsAsync(burial);
            _dataBurial.Setup(x => x.DeleteAsync(It.IsAny <Guid>(), It.IsAny <CancellationToken>()));

            _dataAttachmentBurial.Setup(x => x.GetAsync(It.IsAny <Guid>(), It.IsAny <CancellationToken>())).ReturnsAsync(attachmentBurial);
            _dataAttachmentBurial.Setup(x => x.GetAllAsync(It.IsAny <CancellationToken>())).ReturnsAsync(attachmentBurialList);
            _dataAttachmentBurial.Setup(x => x.InsertAsync(It.IsAny <AttachmentBurial>(), It.IsAny <CancellationToken>())).ReturnsAsync(attachmentBurial);
            _dataAttachmentBurial.Setup(x => x.UpdateAsync(It.IsAny <AttachmentBurial>(), It.IsAny <CancellationToken>())).ReturnsAsync(attachmentBurial);
            _dataAttachmentBurial.Setup(x => x.DeleteAsync(It.IsAny <Guid>(), It.IsAny <CancellationToken>()));

            _burialValidation.Setup(x => x.GetValidationAsync(It.IsAny <Guid>(), It.IsAny <CancellationToken>())).ReturnsAsync(validationBurial);
            _burialValidation.Setup(x => x.InsertValidationAsync(It.IsAny <Burial>(), It.IsAny <CancellationToken>())).ReturnsAsync(validationBurial);
            _burialValidation.Setup(x => x.UpdateValidationAsync(It.IsAny <Burial>(), It.IsAny <CancellationToken>())).ReturnsAsync(validationBurial);
            _burialValidation.Setup(x => x.DeleteValidationAsync(It.IsAny <Guid>(), It.IsAny <CancellationToken>())).ReturnsAsync(validationBurial);

            _service = new BurialService(_fileHelper.Object, _dataBurial.Object, _dataAttachmentBurial.Object, _burialValidation.Object);
        }
        public async Task <AttachmentBurial> InsertAsync(AttachmentBurial entity, CancellationToken cancellationToken)
        {
            await db.AttachmentBurials.AddAsync(entity, cancellationToken);

            await db.SaveChangesAsync(cancellationToken);

            return(entity);
        }
 public async Task <bool> ExistAsync(AttachmentBurial entity, CancellationToken cancellationToken)
 {
     return(await db.AttachmentBurials.AnyAsync(db =>
                                                db.FileName == entity.FileName &&
                                                db.FileType == entity.FileType &&
                                                db.FilePath == entity.FilePath,
                                                cancellationToken));
 }
 private FileModel GetFileModelByAttachmentBurial(AttachmentBurial attachmentBurial = default)
 {
     return(new FileModel()
     {
         FileName = attachmentBurial.FileName,
         FilePath = attachmentBurial.FilePath,
         FileType = attachmentBurial.FileType
     });
 }
Пример #9
0
        public async Task <ValidationModel <AttachmentBurial> > UpdateAsync(AttachmentBurial newEntity, CancellationToken cancellationToken = default)
        {
            var validation = await attachmentBurialValidation.UpdateValidationAsync(newEntity, cancellationToken);

            if (!validation.IsValid)
            {
                return(validation);
            }

            newEntity.UpdatedAt = DateTime.Now;

            validation.Result = await dataAttachmentBurial.UpdateAsync(newEntity, cancellationToken);

            return(validation);
        }
Пример #10
0
        public async Task TestUpdateAsync()
        {
            // Arrange
            var random = new Random(0);
            var number = random.Next(5);
            var entity = GetList()[number];
            await _service.InsertAsync(entity);

            _dbContext.Entry(entity).State        = EntityState.Detached;
            _dbContext.Entry(entity.Burial).State = EntityState.Detached;

            entity = new AttachmentBurial()
            {
                Id        = entity.Id,
                BurialId  = Guid.NewGuid(),
                Burial    = GetBurial(),
                FileName  = Guid.NewGuid().ToString(),
                CreatedAt = DateTime.Now.AddMinutes(60),
                UpdatedAt = DateTime.Now.AddMinutes(60)
            };
            await _service.UpdateAsync(entity);

            _dbContext.Entry(entity).State        = EntityState.Detached;
            _dbContext.Entry(entity.Burial).State = EntityState.Detached;

            // Act
            var result = await _service.GetAsync(entity.Id);

            _dbContext.Entry(result).State        = EntityState.Detached;
            _dbContext.Entry(result.Burial).State = EntityState.Detached;

            // Assert
            Assert.Multiple(() =>
            {
                Assert.IsTrue(entity.FileName == result.FileName);
                Assert.IsTrue(entity.FilePath == result.FilePath);
                Assert.IsTrue(entity.FileType == result.FileType);
                Assert.IsTrue(entity.BurialId == result.BurialId);
                Assert.IsTrue(entity.CreatedAt == result.CreatedAt);
                Assert.IsTrue(entity.UpdatedAt == result.UpdatedAt);
            });
        }
Пример #11
0
        public async Task <ValidationModel <AttachmentBurial> > InsertAsync(AttachmentBurial newEntity, CancellationToken cancellationToken = default)
        {
            var validation = await attachmentBurialValidation.InsertValidationAsync(newEntity, cancellationToken);

            if (!validation.IsValid)
            {
                return(validation);
            }

            var fileData = await fileHelper.SaveFile(newEntity.File);

            newEntity.FilePath  = fileData.FilePath;
            newEntity.FileName  = fileData.FileName;
            newEntity.FileType  = fileData.FileType;
            newEntity.CreatedAt = DateTime.Now;
            newEntity.UpdatedAt = DateTime.Now;

            validation.Result = await dataAttachmentBurial.InsertAsync(newEntity, cancellationToken);

            return(validation);
        }
        public async Task <ValidationModel <AttachmentBurial> > UpdateValidationAsync(AttachmentBurial newEntity, CancellationToken cancellationToken = default)
        {
            if (newEntity is not null)
            {
                if (!await dataAttachmentBurial.ExistByIdAsync(newEntity.Id, cancellationToken))
                {
                    validation.Errors.Add(nameof(AttachmentBurial),
                                          string.Format(BaseValidation.ObjectNotExistById, nameof(AttachmentBurial), newEntity.Id));
                }

                if (!await dataBurial.ExistByIdAsync(newEntity.BurialId, cancellationToken))
                {
                    validation.Errors.Add(nameof(AttachmentBurial.Burial),
                                          string.Format(BaseValidation.ObjectNotExistById, nameof(AttachmentBurial.Burial), newEntity.BurialId));
                }

                if (newEntity.File is null)
                {
                    validation.Errors.Add(nameof(AttachmentBurial.File),
                                          string.Format(BaseValidation.FileNotCanBeNull));
                }
            }
            else
            {
                validation.Errors.Add(nameof(AttachmentBurial),
                                      string.Format(BaseValidation.ObjectNotCanBeNull, nameof(AttachmentBurial)));
            }

            return(validation);
        }
        public async Task <ValidationModel <AttachmentBurial> > InsertValidationAsync(AttachmentBurial newEntity, CancellationToken cancellationToken = default)
        {
            if (newEntity is not null)
            {
                if (newEntity.File is null)
                {
                    validation.Errors.Add(nameof(AttachmentBurial.File),
                                          string.Format(BaseValidation.FileNotCanBeNull));
                }
            }
            else
            {
                validation.Errors.Add(nameof(AttachmentBurial),
                                      string.Format(BaseValidation.ObjectNotCanBeNull, nameof(AttachmentBurial)));
            }

            return(validation);
        }