Example #1
0
        public void ShouldThrowConcurrencyError()
        {
            var cat = new Category {
                CategoryName = "Foo"
            };

            Assert.Equal(0, cat.Id);
            _db.Categories.Add(cat);
            _db.SaveChanges();
            var newCat = _db.Categories.First(c => c.Id == cat.Id);

            _db.Database.ExecuteSqlCommand($"Update Store.Categories set CategoryName = 'Bar' where Id = {cat.Id}");
            newCat.CategoryName = "FooBar";
            var ex = Assert.Throws <DbUpdateConcurrencyException>(() => _db.SaveChanges());
        }
Example #2
0
        public void ShouldDeleteCategoryById()
        {
            var catCount    = Db.Categories.Count();
            var prodCount   = Db.Products.Count();
            var cat         = Db.Categories.First();
            var newDb       = new IntroToEfContext();
            var catToDelete = new Category {
                Id = cat.Id, TimeStamp = cat.TimeStamp
            };

            newDb.Entry(catToDelete).State = EntityState.Deleted;
            newDb.SaveChanges();
            Assert.Equal(catCount - 1, Db.Categories.Count());
            Assert.Equal(prodCount - 2, Db.Products.Count());
        }