public void Fill_original_synonym_for_second_created_exclude() { var expression = new TestUnrecExp("Полыни горькой трава" + new Random().Next(), "Тестовый производитель" + new Random().Next(), price); expression.Save(); var product = Pharmacie().First(); Load(); Resolve(expression, product); resolver.ExcludeProducer(GetRow(expression)); Save(); var product2 = Pharmacie().First(p => p.Id != product.Id); resolver = new ProducerSynonymResolver(price.Id); Load(); Resolve(expression, product2); resolver.ExcludeProducer(GetRow(expression)); Save(); var exlcudes = TestExclude.Queryable.Where(e => e.Price == price).ToList(); Assert.That(exlcudes.Count, Is.EqualTo(2), "не создали исключение"); var exclude = exlcudes[0]; Assert.That(exclude.OriginalSynonym, Is.Not.Null); exclude = exlcudes[1]; Assert.That(exclude.OriginalSynonym, Is.Not.Null); }
public void After_unresolve_product_clear_exclude() { var exp = new TestUnrecExp("ПОЛЫНИ ГОРЬКОЙ ТРАВА сырье 75 г N1", "Кентавр ХФК", price); exp.Save(); //исключения работают только для фармацевтики var products = Pharmacie().Take(2).ToList(); var product = products[0]; var product2 = products[1]; Load(); var row = GetRow(exp); Resolve(exp, product); resolver.ExcludeProducer(row); resolver.UnresolveProduct(row); Resolve(exp, product2); Save(); var excludes = TestExclude.Queryable.Where(e => e.Price == price); Assert.That(excludes.Count(), Is.EqualTo(0), excludes.Implode()); }