public void return_a_work_item_file() { var workItemFileId = Guid.NewGuid().ToString(); var expectedFileName = $"{ Any.String() }.pdf"; const string expectedContentType = "application/pdf"; var expectedContent = Any.ByteArray(); _workItemTrackerServiceRepositoryMock.Setup(repository => repository .GetWorkItemFile(It.IsAny <int>(), workItemFileId)) .Returns(new GetWorkItemDocumentResponse { WorkItemDocument = new WorkItemDocument { DocumentId = workItemFileId, DocumentName = expectedFileName } }); _mediaServerServicerepositoryMock.Setup(repository => repository .DownloadWorkItemFile(workItemFileId)) .Returns(new GetFileStreamResponse { Contents = expectedContent, DateCreated = DateTime.UtcNow, DateModified = DateTime.UtcNow, FileGuid = workItemFileId, FileName = expectedFileName, MimeType = expectedContentType }); var fileResponse = GetWorkItemFile(workItemFileId) as FileContentResult; Assert.Equal(expectedFileName, fileResponse.FileDownloadName); Assert.Equal(expectedContentType, fileResponse.ContentType); Assert.Equal(expectedContent, fileResponse.FileContents); }
public void create_a_work_item_file() { var workItemDocument = Any.WorkItemDocument(); var workItemFile = new WorkItemFileCreateModel { WorkItemFileName = Any.String(), WorkItemFileContent = Any.ByteArray() }; _workItemTrackerServiceRepositoryMock.Setup(repository => repository .CreateWorkItemFile(workItemDocument.WorkItemId, workItemDocument.DocumentId, workItemFile)) .Returns(new WorkItemDocumentResponse { WorkItemDocument = workItemDocument, Success = true }); var expectedFileId = workItemDocument.DocumentId; var expectedFileName = workItemDocument.DocumentName; var expectedCreatedDate = workItemDocument.CreatedDate; var expectedDeleteFlag = workItemDocument.DeleteFlag; var expectedWorkItemId = workItemDocument.WorkItemId; var response = CreateWorkItemFile(workItemDocument, workItemFile) as CreatedResult; var actualWorkItemDocument = (response.Value as ResourceWrapper <WorkItemFileCreateInfoModel>).Value as WorkItemFileCreateInfoModel; Assert.Equal(201, response.StatusCode); Assert.Equal(expectedFileId, actualWorkItemDocument.WorkItemFile.FileId); Assert.Equal(expectedFileName, actualWorkItemDocument.WorkItemFile.FileName); Assert.Equal(expectedCreatedDate, actualWorkItemDocument.WorkItemFile.CreatedDate); Assert.Equal(expectedDeleteFlag, actualWorkItemDocument.WorkItemFile.DeleteFlag); Assert.Equal(expectedWorkItemId, actualWorkItemDocument.WorkItemId); }
private string DownloadWorkItemFile(string workItemFileId) { var mediaServerServiceMock = new Mock <IMediaServerService>(); var mediaServerServiceMockDelegate = new Mock <Func <IMediaServerService> >(); mediaServerServiceMock.Setup(settings => settings .AddFileStreamAsync(It.IsAny <AddFileStreamRequest>())) .Returns(Task.FromResult(new AddFileStreamResponse { Guid = workItemFileId })); mediaServerServiceMockDelegate.Setup(x => x()).Returns(mediaServerServiceMock.Object); return(new MediaServerServiceRepository(mediaServerServiceMockDelegate.Object).AddWorkItemFile( new WorkItemFileCreateModel { WorkItemFileName = Any.String(), WorkItemFileContent = Any.ByteArray() })); }
public void return_a_400_Bad_Request_response_code_when_work_item_service_returns_an_error() { var workItemDocument = Any.WorkItemDocument(); var workItemFile = new WorkItemFileCreateModel { WorkItemFileName = Any.String(), WorkItemFileContent = Any.ByteArray() }; var workItemTrackerServiceErrorMessage = "WIT Service Error"; _workItemTrackerServiceRepositoryMock.Setup(repository => repository .CreateWorkItemFile(workItemDocument.WorkItemId, workItemDocument.DocumentId, workItemFile)) .Returns(new WorkItemDocumentResponse { WorkItemDocument = workItemDocument, Success = false, ErrorMessage = workItemTrackerServiceErrorMessage }); var response = (CreateWorkItemFile(workItemDocument, workItemFile) as BadRequestObjectResult).Value as ApiBadRequestResponse; Assert.Equal(400, response.StatusCode); Assert.Contains(workItemTrackerServiceErrorMessage, response.Errors); }
public void retrieve_work_item_file() { var expectedResponse = new GetFileStreamResponse { Contents = Any.ByteArray(), DateCreated = DateTime.UtcNow, DateModified = DateTime.UtcNow, FileGuid = Guid.NewGuid().ToString(), FileName = $"{ Any.String() }.pdf", MimeType = "application/pdf" }; var mediaServerServiceMock = new Mock <IMediaServerService>(); mediaServerServiceMock.Setup(settings => settings .GetFileStreamAsync(It.Is <GetFileStreamRequest>(request => request.Guid == expectedResponse.FileGuid))) .Returns(Task.FromResult(expectedResponse)); var actualResponse = DownloadWorkItemFile(() => { return(mediaServerServiceMock.Object); }, expectedResponse.FileGuid); Assert.Equal(expectedResponse, actualResponse); }