public async Task TagFileSubmitter_TRex_Successful() { var projectUid = Guid.NewGuid(); var resolvedLegacyProjectId = 544; var tagFileContent = new byte[] { 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9 }; var request = CompactionTagFileRequestExtended.CreateCompactionTagFileRequestExtended ( new CompactionTagFileRequest { ProjectId = resolvedLegacyProjectId, ProjectUid = projectUid, FileName = "Machine Name--whatever --161230235959", Data = tagFileContent, OrgId = string.Empty }, CreateAFence() ); // create the Trex mocks with successful result var mockConfigStore = new Mock <IConfigurationStore>(); var trexGatewayResult = new ContractExecutionResult(); var mockTRexTagFileProxy = new Mock <ITRexTagFileProxy>(); mockTRexTagFileProxy.Setup(s => s.SendTagFile(request, It.IsAny <IHeaderDictionary>())) .ReturnsAsync(trexGatewayResult); var submitter = RequestExecutorContainerFactory .Build <TagFileSubmissionExecutor>(_logger, mockConfigStore.Object, tRexTagFileProxy: mockTRexTagFileProxy.Object, customHeaders: _customHeaders); var result = await submitter.ProcessAsync(request); Assert.IsNotNull(result); Assert.IsTrue(result.Message == ContractExecutionResult.DefaultMessage); }
public async Task <IActionResult> PostTagFileManualImport([FromBody] CompactionTagFileRequest request) { var serializedRequest = JsonUtilities.SerializeObjectIgnoringProperties(request, "Data"); _log.LogDebug($"{nameof(PostTagFileManualImport)}: request {serializedRequest}"); await ValidateRequest(request.ProjectUid); //Now submit tag file to TRex var requestExt = CompactionTagFileRequestExtended.CreateCompactionTagFileRequestExtended(request, null); var responseObj = await RequestExecutorContainerFactory .Build <TagFileSubmissionExecutor>(_logger, _configStore, tRexTagFileProxy : _tRexTagFileProxy, customHeaders : CustomHeaders).ProcessAsync(requestExt); return(responseObj.Code == 0 ? (IActionResult)Ok(responseObj) : BadRequest(responseObj)); }