public void SearchStockItemsIfNoItemFoundTest() { _policyManager.Setup(p => p.Sell_Inactive).Returns(true); _stockService.Setup(s => s.SearchStock(It.IsAny <string>(), It.IsAny <bool>(), It.IsAny <int>(), It.IsAny <int>())) .Returns((string searchTerm, bool sellInactive, int pageIndex, int pageSize) => { return(SearchStockItems(searchTerm)); }); _stockManager = new StockManager(_stockService.Object, _policyManager.Object, _taxService.Object, _resourceManager, _loginManager.Object); var expected = 0; var search = "Test"; var actual = _stockManager.SearchStockItems(search); Assert.AreEqual(expected, actual.Count); }
public HttpResponseMessage SearchStock(string searchTerm, int pageIndex = 1, int pageSize = 100) { var dateStart = DateTime.Now; _performancelog.Debug($"Start,StockV1Controller,SearchStock,{string.Empty},{DateTime.Now:hh.mm.ss.ffffff}"); if (string.IsNullOrEmpty(searchTerm)) { return(Request.CreateResponse( HttpStatusCode.BadRequest, new ErrorResponse { Error = new MessageStyle { Message = Resource.InvalidRequest, MessageType = 0 } })); } var stockItems = _stockManager.SearchStockItems(searchTerm, pageIndex, pageSize); if (stockItems.Count == 0 && (pageIndex == 1 || pageIndex == 0)) { return(Request.CreateResponse(HttpStatusCode.NotFound, new ErrorResponse { Error = new MessageStyle { Message = Resource.StockNotExists, MessageType = MessageType.OkOnly } })); } var listStockItems = stockItems.Select(stockItem => new StockItemModel { StockCode = stockItem.StockCode, Description = stockItem.Description, AlternateCode = stockItem.AlternateCode }).ToList(); _performancelog.Debug($"End,StockV1Controller,SearchStock,{DateTime.Now.Subtract(dateStart).TotalMilliseconds},{DateTime.Now:hh.mm.ss.ffffff}"); return(Request.CreateResponse(HttpStatusCode.OK, listStockItems)); }