Beispiel #1
0
        public void StoreManagerForLidlAddProduct_AddFiskToLidlWhereLidlAlreadyGotFisk_AddProductReturnsMinusOne()
        {
            using (var _uut = new Context())
            {
                var storeman = new Storemanager("Lidl");

                storeman.AddProduct("Fisk", 10.66);

                Assert.That(storeman.AddProduct("Fisk", 12.00), Is.EqualTo(-1));

                var product = (from t in _uut.Products where t.ProductName == "Fisk" select t).FirstOrDefault();

                _uut.Products.Remove(product);
                _uut.Stores.Remove(_uut.Stores.Find(storeman.Store.StoreId));
                _uut.SaveChanges();
            }
        }
Beispiel #2
0
        public void StoreManagerForFøtexAddProduct_AddFiskToFøtex_RelationBetweenFøtexAndFiskCanBeFoundInTheDatabase()
        {
            using (var _uut = new Context())
            {
                var storeman = new Storemanager("Føtex");

                storeman.AddProduct("Fisk", 10.66);

                var relation = (from t in _uut.StoreProducts where Math.Abs(t.Price - 10.66) < 0.1 select t).FirstOrDefault();

                Assert.That(relation.Price, Is.EqualTo(10.66));

                _uut.Products.Remove(_uut.Products.Find(relation.ProductId));
                _uut.Stores.Remove(_uut.Stores.Find(storeman.Store.StoreId));
                _uut.SaveChanges();
            }
        }
Beispiel #3
0
        public void StoremangerForAldiAddProduct_AddBananToAldi_BananCanBefoundInTheDatabase()
        {
            using (var _uut = new Context())
            {
                var storeman = new Storemanager("Aldi");

                storeman.AddProduct("Banan", 2.95);

                var product = (from t in _uut.Products where t.ProductName == "Banan" select t).FirstOrDefault();

                Assert.That(product.ProductName, Is.EqualTo("Banan"));

                _uut.Stores.Remove(_uut.Stores.Find(product.StoreProducts.First().Store.StoreId));
                _uut.Products.Remove(product);
                _uut.SaveChanges();
            }
        }
Beispiel #4
0
        StoreManagerForFaktaAddProduct_AddTomatToFaktaWhereTomatExistsButNotInFakta_RelationBetweenFaktaAndTomatCanBeFound
            ()
        {
            using (var _uut = new Context())
            {
                var storeman = new Storemanager("Fakta");

                _uut.Products.Add(new Product()
                {
                    ProductName = "Tomat"
                });
                _uut.SaveChanges();
                storeman.AddProduct("Tomat", 5.95);

                Assert.That(_uut.StoreProducts.FirstOrDefault().ProductId, Is.EqualTo(_uut.Products.FirstOrDefault().ProductId));

                var product = (from t in _uut.Products where t.ProductName == "Tomat" select t).FirstOrDefault();

                _uut.Products.Remove(product);
                _uut.Stores.Remove(_uut.Stores.Find(storeman.Store.StoreId));
                _uut.SaveChanges();
            }
        }
Beispiel #5
0
        public void FindCheapestStore_ProductApple_ReturnRelationBetweenFaktaAndApple()
        {
            var aldi  = new Storemanager("Aldi");
            var føtex = new Storemanager("Føtex");
            var fakta = new Storemanager("Fakta");

            aldi.AddProduct("Apple", 4.95);
            føtex.AddProduct("Apple", 5.95);
            fakta.AddProduct("Apple", 3.95);

            Assert.That(_uut.FindCheapestStore("Apple").StoreId, Is.EqualTo(fakta.Store.StoreId));

            using (var db = new Context())
            {
                db.Stores.Remove(db.Stores.Find(aldi.Store.StoreId));
                db.Stores.Remove(db.Stores.Find(føtex.Store.StoreId));
                db.Stores.Remove(db.Stores.Find(fakta.Store.StoreId));

                var product = (from t in db.Products where t.ProductName == "Apple" select t).FirstOrDefault();

                db.Products.Remove(product);
                db.SaveChanges();
            }
        }
Beispiel #6
0
 public MainWindow()
 {
     InitializeComponent();
     Manager = new Storemanager("Aldi");
 }