public void When_get_view_model_Then_return_correct_view_model() { //Given var target = CreateViewModelFactory(); var firstDocument = new DocumentDto() { Id = 1, Description = "1", DocumentLibraryId = 1, DocumentType = new DocumentTypeDto { Name = "1" }, Filename = "1" }; var secondDocument = new DocumentDto() { Id = 2, Description = "2", DocumentLibraryId = 2, DocumentType = new DocumentTypeDto { Name = "1" }, Filename = "2" }; var documents = new DocumentDto[] { firstDocument, secondDocument }; _riskAssessmentAttachmentService.Setup( x => x.GetRiskAssessmentAttachedDocuments(_riskAssessmentId, _companyId)).Returns(documents); //When var result = target .WithCompanyId(_companyId) .WithRiskAssessmentId(_riskAssessmentId) .GetViewModel(); //Then Assert.That(result, Is.TypeOf<DocumentsViewModel>()); Assert.That(result.CompanyId, Is.EqualTo(_companyId)); Assert.That(result.RiskAssessmentId, Is.EqualTo(_riskAssessmentId)); Assert.That(result.ExistingDocumentsViewModel.PreviouslyAddedDocuments.Count, Is.EqualTo(documents.Length)); var returnedFirstDocument = result.ExistingDocumentsViewModel.PreviouslyAddedDocuments.First(); Assert.That(returnedFirstDocument.Id, Is.EqualTo(firstDocument.Id)); Assert.That(returnedFirstDocument.Description, Is.EqualTo(firstDocument.Description)); Assert.That(returnedFirstDocument.DocumentLibraryId, Is.EqualTo(firstDocument.DocumentLibraryId)); Assert.That(returnedFirstDocument.DocumentTypeName, Is.EqualTo(firstDocument.DocumentType.Name)); Assert.That(returnedFirstDocument.Filename, Is.EqualTo(firstDocument.Filename)); var returnedSecondDocument = result.ExistingDocumentsViewModel.PreviouslyAddedDocuments.Skip(1).Take(1).First(); Assert.That(returnedSecondDocument.Id, Is.EqualTo(secondDocument.Id)); Assert.That(returnedSecondDocument.Description, Is.EqualTo(secondDocument.Description)); Assert.That(returnedSecondDocument.DocumentLibraryId, Is.EqualTo(secondDocument.DocumentLibraryId)); Assert.That(returnedSecondDocument.DocumentTypeName, Is.EqualTo(secondDocument.DocumentType.Name)); Assert.That(returnedSecondDocument.Filename, Is.EqualTo(secondDocument.Filename)); }
public DocumentDto Map(Document entity) { DocumentDto dto; var furtherControlMeasureDocument = entity as TaskDocument; var addedDocument = entity as AddedDocument; var accidentRecordDocument = entity as AccidentRecordDocument; if(furtherControlMeasureDocument != null) { dto = new TaskDocumentDto(); var furtherControlMeasureDocumentDto = dto as TaskDocumentDto; furtherControlMeasureDocumentDto.DocumentOriginType = furtherControlMeasureDocument.DocumentOriginType; } else if(addedDocument != null) { dto = new AddedDocumentDto(); var addedDocumentDto = dto as AddedDocumentDto; addedDocumentDto.SiteId = addedDocument.Site != null ? addedDocument.Site.Id : default(long); addedDocumentDto.SiteName = addedDocument.Site != null ? addedDocument.Site.Name : "All"; } else if(accidentRecordDocument != null) { dto = new AccidentRecordDocumentDto(); var accidentRecordDocumentDto = dto as AccidentRecordDocumentDto; accidentRecordDocumentDto.AccidentRecord = new AccidentRecordDtoMapper().Map(accidentRecordDocument.AccidentRecord); } else { dto = new DocumentDto(); } dto.Id = entity.Id; dto.DocumentLibraryId = entity.DocumentLibraryId; dto.Filename = entity.Filename; dto.Extension = entity.Extension; dto.FilesizeByte = entity.FilesizeByte; dto.Description = entity.Description; dto.Title = entity.Title; dto.CreatedOn = entity.CreatedOn; dto.CreatedByName = entity.CreatedBy != null ? new AuditedUserDtoMapper().Map(entity.CreatedBy).Name: string.Empty; dto.CreatedBy = entity.CreatedBy != null ? new AuditedUserDtoMapper().Map(entity.CreatedBy) : null; dto.LastModifiedOn = entity.LastModifiedOn; dto.Deleted = entity.Deleted; dto.DocumentReference = entity.DocumentReference; dto.SiteReference = entity.SiteReference; if(entity.DocumentType != null) dto.DocumentType = new DocumentTypeDtoMapper().Map(entity.DocumentType); return dto; }
public static DocumentViewModel CreateFrom(DocumentDto documentDto) { return new DocumentViewModel() { Id = documentDto.Id, Description = documentDto.Description, Title = documentDto.Title, DocumentType = documentDto.DocumentType != null ? documentDto.DocumentType.Name: "", CanDelete = documentDto is AddedDocumentDto, UploadedBy = documentDto.CreatedByName, DateUploaded = documentDto.CreatedOn, SiteReference = documentDto.SiteReference, DocumentReference = documentDto.DocumentReference, DocumentLibraryId = documentDto.DocumentLibraryId }; }
public void When_get_view_model_Then_should_call_correct_methods() { //Given var target = CreateViewModelFactory(); var documents = new DocumentDto[] { }; _riskAssessmentAttachmentService.Setup( x => x.GetRiskAssessmentAttachedDocuments(_riskAssessmentId, _companyId)).Returns(documents); //When target .WithCompanyId(_companyId) .WithRiskAssessmentId(_riskAssessmentId) .GetViewModel(); //Then _riskAssessmentAttachmentService.VerifyAll(); }