public void GetProducts_PriceActive_PriceRecordsNotDeletetAndIsUsed_ReturnsAllProduct() { var priceId = Guid.NewGuid(); var price1 = new Price { Id = priceId, IsActive = true, Name = "Test Price 1", Sheet = "Test Sheet 1", Namerange = "Test NameRange 1", Pricerange = "", PriceRecords = new[] { new PriceRecord { RecordIndex = 1, Used = true, Deleted = false, Links = new[] { new Link { Id = Guid.NewGuid(), Product = new Product { Id = Guid.NewGuid(), Name = "Product 1" } }, new Link { Id = Guid.NewGuid(), Product = new Product { Id = Guid.NewGuid(), Name = "Product 2" } }, } }, new PriceRecord { RecordIndex = 2, Used = true, Deleted = false, Links = new[] { new Link { Id = Guid.NewGuid(), Product = new Product { Id = Guid.NewGuid(), Name = "Product 3" } }, new Link { Id = Guid.NewGuid(), Product = new Product { Id = Guid.NewGuid(), Name = "Product 4" } }, } }, new PriceRecord { RecordIndex = 3, Used = false, Deleted = false, Links = new[] { new Link { Id = Guid.NewGuid(), Product = new Product { Id = Guid.NewGuid(), Name = "Product 5" } }, new Link { Id = Guid.NewGuid(), Product = new Product { Id = Guid.NewGuid(), Name = "Product 6" } }, } }, new PriceRecord { RecordIndex = 4, Used = true, Deleted = true, Links = new[] { new Link { Id = Guid.NewGuid(), Product = new Product { Id = Guid.NewGuid(), Name = "Product 7" } }, new Link { Id = Guid.NewGuid(), Product = new Product { Id = Guid.NewGuid(), Name = "Product 8" } }, } } } }; var price2 = new Price { Id = Guid.NewGuid(), IsActive = true, Name = "Test Price 2", Sheet = "Test Sheet 2", Namerange = "Test NameRange 2", Pricerange = "", PriceRecords = new[] { new PriceRecord { RecordIndex = 5, Used = true, Deleted = false, Links = new[] { new Link { Id = Guid.NewGuid(), Product = new Product { Id = Guid.NewGuid(), Name = "Product 9" } }, new Link { Id = Guid.NewGuid(), Product = new Product { Id = Guid.NewGuid(), Name = "Product 10" } }, } }, } }; var options = GetOptions(); using (var context = new TestDbContext(options)) { context.Add(price1); context.Add(price2); context.SaveChanges(); } using (var context = new TestDbContext(options)) { var products = context.GetProducts(priceId).ToArray(); Assert.That(products.Length, Is.EqualTo(4)); } }