Beispiel #1
0
        public void CreatePassCountDetailedResult_Should_return_null_object_When_TotalCoverageArea_is_null()
        {
            var passCountDetailedResult = new PassCountDetailedResult(null, false, null, 0);
            var result = new CompactionPassCountDetailedResult(passCountDetailedResult);

            Assert.IsNotNull(result);
            Assert.AreEqual(ContractExecutionResult.DefaultMessage, result.Message);
            Assert.IsNull(result.DetailedData);
        }
Beispiel #2
0
        public void CreatePassCountDetailedResult_Should_return_full_object_When_TotalCoverageArea_is_not_null()
        {
            var passCountRange          = new TargetPassCountRange(45, 67);
            var passCountDetailedResult = new PassCountDetailedResult(passCountRange, false, new[] { 12.3, 45.6 }, 123.45);

            var result = new CompactionPassCountDetailedResult(passCountDetailedResult);

            Assert.IsNotNull(result);
            Assert.AreEqual(ContractExecutionResult.DefaultMessage, result.Message);

            Assert.IsNotNull(result.DetailedData.PassCountTarget);
            Assert.IsNotNull(result.DetailedData.Percents);
            Assert.IsNotNull(result.DetailedData.TotalCoverageArea);
        }
Beispiel #3
0
        public async Task <CompactionPassCountDetailedResult> GetPassCountDetails(
            [FromQuery] Guid projectUid,
            [FromQuery] Guid?filterUid)
        {
            Log.LogInformation("GetPassCountDetails: " + Request.QueryString);

            var passCountsRequest = await GetPassCountRequest(projectUid, filterUid, isSummary : false);

            passCountsRequest.Validate();

            try
            {
                var result = await RequestExecutorContainerFactory.Build <DetailedPassCountExecutor>(LoggerFactory,
#if RAPTOR
                                                                                                     RaptorClient,
#endif
                                                                                                     configStore : ConfigStore, trexCompactionDataProxy : TRexCompactionDataProxy, customHeaders : CustomHeaders,
                                                                                                     userId : GetUserId(), fileImportProxy : FileImportProxy)
                             .ProcessAsync(passCountsRequest) as PassCountDetailedResult;

                var returnResult = new CompactionPassCountDetailedResult(result);

                Log.LogInformation("GetPassCountDetails result: " + JsonConvert.SerializeObject(returnResult));

                return(returnResult);
            }
            catch (ServiceException exception)
            {
#if RAPTOR
                var statusCode = (TASNodeErrorStatus)exception.GetResult.Code == TASNodeErrorStatus.asneFailedToRequestDatamodelStatistics ? HttpStatusCode.NoContent : HttpStatusCode.BadRequest;

                throw new ServiceException(statusCode,
                                           new ContractExecutionResult(exception.GetResult.Code, exception.GetResult.Message));
#else
                throw new ServiceException(HttpStatusCode.BadRequest,
                                           new ContractExecutionResult(ContractExecutionStatesEnum.ValidationError, exception.Message));
#endif
            }
            finally
            {
                Log.LogInformation("GetPassCountDetails returned: " + Response.StatusCode);
            }
        }