示例#1
0
        public async Task GetAssetListSetsShouldCallGetAssetListSetsUseCase()
        {
            // given
            var request  = new GetAllAssetListRequest();
            var response = new GetAllAssetListResponse();

            _mockGetAssetListSetsUseCase.Setup(x => x.ExecuteAsync(request)).ReturnsAsync(response);

            // when
            await _classUnderTest.GetAllAssetList(request).ConfigureAwait(false);

            // then
            _mockGetAssetListSetsUseCase.Verify(x => x.ExecuteAsync(request), Times.Once);
        }
示例#2
0
        public async Task <IActionResult> GetAllAssetList([FromQuery] GetAllAssetListRequest request)
        {
            try
            {
                var assetsSearchResult = await _getAssetListSetsUseCase.ExecuteAsync(request).ConfigureAwait(false);

                var apiResponse = new APIAllResponse <GetAllAssetListResponse>(assetsSearchResult)
                {
                    Total     = assetsSearchResult.Total(),
                    LastHitId = assetsSearchResult.LastHitId()
                };

                return(new OkObjectResult(apiResponse));
            }
            catch (Exception e)
            {
                LambdaLogger.Log(e.Message + e.StackTrace);
                return(new BadRequestObjectResult(e.Message));
            }
        }
        public async Task <GetAllAssetListResponse> GetListOfAssetsSets(GetAllAssetListRequest query)
        {
            var searchResponse = await _elasticSearchWrapper.SearchSets <QueryableAsset, GetAllAssetListRequest>(query).ConfigureAwait(false);

            var assetListResponse = new GetAllAssetListResponse();

            if (searchResponse == null)
            {
                return(assetListResponse);
            }
            assetListResponse.Assets.AddRange(searchResponse.Documents.Select(queryableAsset =>
                                                                              queryableAsset.Create())
                                              );

            assetListResponse.SetTotal(searchResponse.Total);
            if (searchResponse.Documents.Count > 0)
            {
                assetListResponse.SetLastHitId(searchResponse.Hits.Last().Id);
            }

            return(assetListResponse);
        }
 public async Task <GetAllAssetListResponse> ExecuteAsync(GetAllAssetListRequest query)
 {
     return(await _searchGateway.GetListOfAssetsSets(query).ConfigureAwait(false));
 }