using Centron.BusinessLogic.Warehousing; using Centron.BusinessLogic.WebServices.Warehousing; using Centron.Data.Entities.Merchandise.Articles; using Centron.Tests.EndToEnd.Infrastructure; using Xunit.Abstractions; namespace Centron.Tests.EndToEnd.Tests.ArticleSearchTest; public class ArticleSearchTest : EndToEndTest { public ArticleSearchTest(ITestOutputHelper testOutputHelper) : base(testOutputHelper) { } public override void Execute() { this.SearchArticles(); //TODO search with barcodes } private void SearchArticles() { //TODO //change page //change entries per page //change filter //change descending flag //change entriesPerPage ArticleCompactFilter filter; //this should return an empty list, because the two properties contradict each other filter = new ArticleCompactFilter() { Divisible = true, ScanBarcode = true }; this.SearchArticles(filter, "00_emptySearch"); //valid stock I3Ds are -1, 1, 2,3,4 5,6, 7: -1 is the main stock filter = new ArticleCompactFilter() { StockI3Ds = new[] { 1 } }; this.SearchArticles(filter, "01_stockSearch1"); filter = new ArticleCompactFilter() { StockI3Ds = new[] { -1, 2, 4, 7 } }; this.SearchArticles(filter, "02_stockSearch2"); filter = new ArticleCompactFilter() { StockI3Ds = new[] { -1, 2, 4, 7 }, IncludeStockWithoutAmount = true }; this.SearchArticles(filter, "03_stockSearch3"); filter = new ArticleCompactFilter() { StockI3Ds = new[] { 1 }, IncludeStockWithoutAmount = true }; this.SearchArticles(filter, "04_stockSearch4"); } private void SearchArticles(ArticleCompactFilter filter, string testFileName, ArticlePreviewSort sort = ArticlePreviewSort.ArticleCode, bool sortDescending = false, int page = 1, int entriesPerPage = 250) { var result = WithSession(f => f.GetBL().GetArticlesThroughPaging(sort, sortDescending, filter, page, entriesPerPage)); this.Verifier.Verify(testFileName, result); } }