public void Sell_only_available_stock()
        {
            var product      = GetProduct("АСПИРИН-С БАЙЕР табл. шип. N10");
            var transitStock = new Stock(session, product, address, StockStatus.InTransit);

            stateless.Insert(transitStock);
            CatalogChooser dialog = null;

            manager.DialogOpened.Subscribe(x =>
            {
                dialog = (CatalogChooser)x;
                scheduler.Start();
            });
            model.SearchBehavior.ActiveSearchTerm.Value = "АСП";
            Assert.That(dialog.Items.Value.Count, Is.GreaterThan(0));
            Assert.That(dialog.Items.Value.Select(x => x.CatalogId), Does.Not.Contains(product.CatalogId));
        }
        public void CheckCurentCatalog()
        {
            var line = new CheckLine(stock, 3);

            model.CurrentLine.Value = line;
            model.Lines.Add(line);
            model.checkType = CheckType.SaleBuyer;
            scheduler.AdvanceByMs(2000);
            Assert.AreEqual(catalog.Id, model.CurrentCatalog.Value.Id);

            var CatalogChooser = new CatalogChooser("упа", stock.Address);

            scheduler.AdvanceByMs(2000);
            Assert.AreEqual(catalog.Id, CatalogChooser.CurrentCatalog.Value.Id);
            CatalogChooser.TryClose();

            var stockChooser = new StockChooser(catalog.Id, model.Lines, stock.Address);

            Assert.AreEqual(catalog.Id, stockChooser.CurrentCatalog.Value.Id);
            stockChooser.TryClose();
        }