public async System.Threading.Tasks.Task SuppliersDeleteItemAsync()
        {
            //Arrange
            //init
            var controller = new NorthwindWeb.Controllers.SuppliersController();
            var db         = new NorthwindDatabase();
            //create Suppliers
            var Suppliers = new Suppliers()
            {
                CompanyName = "TestSuppliersCreate",
                ContactName = "contact",
            };

            db.Entry(Suppliers).State = System.Data.Entity.EntityState.Added;
            db.SaveChanges();
            //detach Suppliers from db
            db.Entry(Suppliers).State = System.Data.Entity.EntityState.Detached;
            db.SaveChanges();

            //Act
            //run controller action
            await controller.DeleteConfirmed(Suppliers.SupplierID);

            controller.Dispose();

            //Assert
            //this will throw a InvalidOperationException
            var actualSuppliers = db.Suppliers.Where(x => x.SupplierID == Suppliers.SupplierID).First();
        }
Exemplo n.º 2
0
        public async Task TerritoryCreate()
        {
            //Arrange
            Region regionTest = new Region()
            {
                RegionID = 100, RegionDescription = "test"
            };
            Territories territoryTest = new Territories()
            {
                TerritoryID = "102", TerritoryDescription = "Acasa", Region = regionTest
            };

            //Act
            var expected = db.Territories.Count() + 1;
            await _territoriesControllerTest.Create(territoryTest, regionTest.RegionID);

            var actual    = db.Territories.Count();
            var territory = db.Territories.Where(t => t.TerritoryID == territoryTest.TerritoryID && t.TerritoryDescription == territoryTest.TerritoryDescription);

            //Assert
            Assert.AreEqual(expected, actual);

            var regions = db.Regions.Where(t => t.RegionDescription.Contains(regionTest.RegionDescription));

            db.Regions.RemoveRange(regions);
            var territories = db.Territories.Where(t => t.TerritoryDescription.Contains("Acasa"));

            db.Territories.RemoveRange(territories);
            db.SaveChanges();
        }
        public async Task OrderDetailReturnsDetails()
        {
            //Arrage
            Orders OrderTest = new Orders()
            {
                OrderID = 22, CustomerID = "ALFKI", EmployeeID = 3
            };
            Order_Details detailsTest = new Order_Details()
            {
                ProductID = 20, UnitPrice = 23, Quantity = 12, Discount = 1, Order = OrderTest
            };
            await _detailsControllerUnderTest.Create(detailsTest, OrderTest.OrderID);

            //Act
            var result = await _detailsControllerUnderTest.Details(OrderTest.OrderID, detailsTest.ProductID) as ViewResult;

            //Assert
            Assert.IsNotNull(result);

            var details = db.Order_Details.Where(o => o.OrderID == detailsTest.OrderID && o.ProductID == detailsTest.ProductID && o.UnitPrice == detailsTest.UnitPrice && o.Quantity == detailsTest.Quantity && o.Discount == detailsTest.Discount);
            var orders  = db.Orders.Find(OrderTest.OrderID);

            foreach (var orderdet in details)
            {
                db.Order_Details.Remove(orderdet);
            }

            db.Orders.Remove(orders);
            db.SaveChanges();
        }
Exemplo n.º 4
0
        public async System.Threading.Tasks.Task RegionEditEdits()
        {
            //Arrange
            Region regionTest = new Region()
            {
                RegionID = 100, RegionDescription = "Aici"
            };
            await _regionsControllerTest.Create(regionTest);

            db.Entry(regionTest).State = System.Data.Entity.EntityState.Added;

            var expectedRegion = db.Regions.Find(regionTest.RegionID);

            db.Dispose();
            regionTest.RegionDescription = "Acolo";
            db = new NorthwindDatabase();

            //Act
            await _regionsControllerTest.Edit(regionTest);

            db.Entry(regionTest).State = System.Data.Entity.EntityState.Modified;
            var actualRegion = db.Regions.Find(regionTest.RegionID);

            //Assert
            Assert.AreEqual(expectedRegion, actualRegion);


            var region = db.Regions.Where(r => (r.RegionDescription == "Aici") || (r.RegionDescription == "Acolo"));

            db.Regions.RemoveRange(region);
            db.SaveChanges();
        }
Exemplo n.º 5
0
        public async Task ShipperEditEdits()
        {
            //Arrange
            Shippers shipperTest = new Shippers()
            {
                CompanyName = "Express", Phone = "0240-111-111"
            };
            await _shippersControllerTest.Create(shipperTest);

            db.Entry(shipperTest).State = System.Data.Entity.EntityState.Added;

            var expectedShipper = db.Shippers.Find(shipperTest.ShipperID);

            db.Dispose();
            shipperTest.CompanyName = "Nero Express";
            shipperTest.Phone       = "0240-222-222";
            db = new NorthwindDatabase();

            //Act
            await _shippersControllerTest.Edit(shipperTest);

            db.Entry(shipperTest).State = System.Data.Entity.EntityState.Modified;
            var actualShipper = db.Shippers.Find(shipperTest.ShipperID);

            //Assert
            Assert.AreEqual(expectedShipper, actualShipper);


            var shipper = db.Shippers.Where(s => (s.CompanyName == "Express" && s.Phone == "0240-111-111") || (s.CompanyName == "Nero Express" && s.Phone == "0240-222-222"));

            db.Shippers.RemoveRange(shipper);
            db.SaveChanges();
        }
        public ActionResult Index([Bind("ID,LastName,FirstName,Email,Comment")] Persons person)
        {//create person from Form
            if (!ModelState.IsValid)
            {
                if (String.IsNullOrEmpty(person.FirstName))
                {
                    ModelState.AddModelError("", "Introduceti-va numele");
                }

                if (String.IsNullOrEmpty(person.Email))
                {
                    ModelState.AddModelError("", "Email-ul nu a fost introdus corect");
                }

                if (String.IsNullOrEmpty(person.Comment))
                {
                    ModelState.AddModelError("", "Va rugam sa va spuneti parerea");
                }

                return(View(person));
            }
            person.ID = db.Persons.Count() + 1;
            db.Persons.Add(person);
            try
            {
                db.SaveChanges();
                return(RedirectToAction("Index", new { status = "Mesajul dumneavoastra a fost trimis cu succes. Va multumim!" }));
            }
            catch
            {
                return(RedirectToAction("Index", new { status = "Mesajul dumneavoastra nu a putut fi trimis momentan. Va rugam incercati mai tarziu!" }));
            }
        }
        public async Task CategoryEditEdits()
        {
            //Arrange
            Categories categoriesTest = new Categories()
            {
                CategoryName = "foto"
            };
            await _categoriesControllerTest.Create(categoriesTest);

            db.Entry(categoriesTest).State = System.Data.Entity.EntityState.Added;

            var expectedCategory = db.Categories.Find(categoriesTest.CategoryID);

            db.Dispose();
            categoriesTest.CategoryName = "video";
            db = new NorthwindDatabase();

            //Act
            await _categoriesControllerTest.Edit(categoriesTest);

            db.Entry(categoriesTest).State = System.Data.Entity.EntityState.Modified;
            var actualCategory = db.Categories.Find(categoriesTest.CategoryID);

            //Assert
            Assert.AreEqual(expectedCategory, actualCategory);


            var category = db.Categories.Where(c => (c.CategoryName == "video") || (c.CategoryName == "foto"));

            db.Categories.RemoveRange(category);
            db.SaveChanges();
        }
        public async Task OrdersReturnsEditEdits()
        {
            //Arrange
            Orders orderTest = new Orders()
            {
                OrderID = 222, EmployeeID = 3
            };
            await _ordersControllerUnderTest.Create(orderTest);

            db.Entry(orderTest).State = System.Data.Entity.EntityState.Added;

            var expectedOrder = db.Orders.Find(orderTest.OrderID);

            db.Dispose();
            orderTest.EmployeeID = 4;
            db = new NorthwindDatabase();

            //Act
            await _ordersControllerUnderTest.Edit(orderTest);

            db.Entry(orderTest).State = System.Data.Entity.EntityState.Modified;
            var actualOrder = db.Orders.Find(orderTest.OrderID);

            //Assert
            Assert.AreEqual(expectedOrder, actualOrder);


            var orders = db.Orders.Where(o => o.OrderID == orderTest.OrderID && o.EmployeeID == orderTest.EmployeeID);

            db.Orders.RemoveRange(orders);
            db.SaveChanges();
        }
Exemplo n.º 9
0
        public async Task CustomersReturnsEditEdits()
        {
            //Arrange
            var expectedCustomer = new Customers()
            {
                CustomerID = "ZZZZZ", CompanyName = "test"
            };

            db.Customers.Add(expectedCustomer);
            db.SaveChanges();
            db.Entry(expectedCustomer).State = System.Data.Entity.EntityState.Added;

            db.Dispose();
            expectedCustomer.CompanyName = "test2";
            db = new NorthwindDatabase();

            //Act
            await _customersControllerUnderTest.Edit(expectedCustomer);

            db.Entry(expectedCustomer).State = System.Data.Entity.EntityState.Modified;
            var actualCustomer = db.Customers.Find(expectedCustomer.CustomerID);

            //Assert
            Assert.AreEqual(expectedCustomer.CustomerID, actualCustomer.CustomerID);


            var customerss = db.Customers.Where(c => c.CompanyName == expectedCustomer.CompanyName || c.CompanyName == actualCustomer.CompanyName);

            db.Customers.RemoveRange(customerss);
            db.SaveChanges();
        }
        private void DeleteTestFromDb()
        {
            var employees = _db.Employees.Where(e => e.LastName.Contains("test"));

            _db.Employees.RemoveRange(employees);
            _db.SaveChanges();
        }
Exemplo n.º 11
0
        public async System.Threading.Tasks.Task ProductCreateItemAsync()
        {
            //Arrange
            var controller         = new ProductController();
            var db                 = new NorthwindDatabase();
            int productCountBefore = db.Products.Count();
            var product            = new Products()
            {
                CategoryID      = 4,
                ProductName     = "TestProductCreate",
                Discontinued    = false,
                QuantityPerUnit = "1",
                UnitPrice       = 1,
                UnitsInStock    = 1,
                ReorderLevel    = 0,
                SupplierID      = 1,
                UnitsOnOrder    = 0
            };

            //Act
            await controller.Create(product, null);

            //Assert
            Assert.AreEqual(productCountBefore + 1, db.Products.Count());
            db.Entry(db.Products.Where(x => x.ProductName == product.ProductName).First()).State = System.Data.Entity.EntityState.Deleted;
            db.SaveChanges();
            controller.Dispose();
            db.Dispose();
        }
Exemplo n.º 12
0
        public void ContactCreateItem()
        {
            //Arrange
            var controller = new NorthwindWeb.Controllers.ContactController();
            var db         = new NorthwindDatabase();

            NorthwindWeb.Models.Persons person = new NorthwindWeb.Models.Persons()
            {
                ID        = db.Persons.Count() + 1,
                FirstName = "test1223",
                LastName  = "123331111",
                Email     = "*****@*****.**",
                Comment   = "Buna!"
            };

            //Act
            var result = controller.Index(person);

            //Assert
            Assert.IsNotNull(result);

            db.Entry(person).State = System.Data.Entity.EntityState.Deleted;
            db.SaveChanges();
            db.Dispose();
        }
Exemplo n.º 13
0
        public async Task RegionReturnsDetails()
        {
            //Arrage
            Region regionTest = new Region()
            {
                RegionID = 100, RegionDescription = "Acasa"
            };
            //Act
            var result = await _regionsControllerTest.Details(regionTest.RegionID);


            //Assert
            Assert.IsNotNull(result);

            var region = db.Regions.Where(r => r.RegionDescription == regionTest.RegionDescription);

            db.Regions.RemoveRange(region);
            db.SaveChanges();
        }
        public async Task CategoryCreate()
        {
            //Arrange
            Categories CategoriesTest = new Categories()
            {
                CategoryID = 14, CategoryName = "foto"
            };
            //Act
            var expected = db.Categories.Count() + 1;
            await _categoriesControllerTest.Create(CategoriesTest);

            var actual   = db.Categories.Count();
            var category = db.Categories.Where(c => c.CategoryName == CategoriesTest.CategoryName);

            //Assert
            Assert.AreEqual(expected, actual);

            db.Categories.RemoveRange(category);
            db.SaveChanges();
        }
        public async Task OrdersReturnsDetails()
        {
            //Arrage
            Orders orderTest = new Orders()
            {
                OrderID = 222, EmployeeID = 3
            };
            await _ordersControllerUnderTest.Create(orderTest);

            //Act
            var result = await _ordersControllerUnderTest.Details(orderTest.OrderID) as ViewResult;

            //Assert
            Assert.IsNotNull(result);

            var orders = db.Orders.Where(o => o.OrderID == orderTest.OrderID && o.EmployeeID == orderTest.EmployeeID);

            db.Orders.RemoveRange(orders);
            db.SaveChanges();
        }
Exemplo n.º 16
0
        public async Task ShipperCreate()
        {
            //Arrange
            Shippers shipperTest = new Shippers()
            {
                ShipperID = 4, CompanyName = "Nero", Phone = "0240-555-555"
            };
            //Act
            var expected = db.Shippers.Count() + 1;
            await _shippersControllerTest.Create(shipperTest);

            var actual  = db.Shippers.Count();
            var shipper = db.Shippers.Where(s => s.CompanyName == shipperTest.CompanyName && s.Phone == shipperTest.Phone);

            //Assert
            Assert.AreEqual(expected, actual);

            db.Shippers.RemoveRange(shipper);
            db.SaveChanges();
        }
Exemplo n.º 17
0
 public string Create(int id, int quantity)
 {
     if (!(db.Products.Where(x => x.ProductID == id).Any()) || db.Products.Where(x => x.ProductID == id).First().Discontinued)
     {
         return("Error");
     }
     try
     {
         if (!(db.ShopCart.Any(x => x.ProductID == id && x.UserName == User.Identity.Name)))
         {
             ShopCarts cart = new ShopCarts()
             {
                 UserName = User.Identity.Name, ProductID = id, Quantity = quantity, Products = db.Products.Find(id)
             };
             db.ShopCart.Add(cart);
             db.SaveChanges();
         }
         else
         {
             Update(id, quantity);
         }
         return("{}");
     }
     catch (Exception e)
     {
         //logger.Error(e.ToString());
         return("Error");
     }
 }
        public async System.Threading.Tasks.Task SuppliersEditItemAsync()
        {
            //Arrange
            //init
            var controller = new NorthwindWeb.Controllers.SuppliersController();
            var db         = new NorthwindDatabase();
            //create Suppliers
            var Suppliers = new Suppliers()
            {
                CompanyName = "TestSuppliersCreate",
                ContactName = "contact",
            };

            db.Entry(Suppliers).State = System.Data.Entity.EntityState.Added;
            db.SaveChanges();
            //detach Suppliers from db
            db.Entry(Suppliers).State = System.Data.Entity.EntityState.Detached;
            db.SaveChanges();
            //edit name of Suppliers
            string name         = Suppliers.CompanyName;
            string nameExpected = "test1223";

            Suppliers.CompanyName = nameExpected;

            //Act
            //run controller action
            await controller.Edit(Suppliers);

            controller.Dispose();
            string actual = db.Suppliers.Where(x => x.SupplierID == Suppliers.SupplierID).First().CompanyName;

            //Assert
            //check and delete Suppliers
            Assert.AreEqual(nameExpected, actual);
            Suppliers                 = db.Suppliers.Where(x => x.SupplierID == Suppliers.SupplierID).First();
            Suppliers.CompanyName     = name;
            db.Entry(Suppliers).State = System.Data.Entity.EntityState.Deleted;
            db.SaveChanges();
            db.Dispose();
        }
Exemplo n.º 19
0
        public async System.Threading.Tasks.Task ProductEditItemAsync()
        {
            //Arrange
            //init
            var controller = new ProductController();
            var db         = new NorthwindDatabase();
            //create product
            var product = new Products()
            {
                ProductName = "test", CategoryID = 1, SupplierID = 1
            };

            db.Entry(product).State = System.Data.Entity.EntityState.Added;
            db.SaveChanges();
            //detach product from db
            db.Entry(product).State = System.Data.Entity.EntityState.Detached;
            db.SaveChanges();
            //edit name of product
            string name         = product.ProductName;
            string nameExpected = "test12232";

            product.ProductName = nameExpected;

            //Act
            //run controller action
            await controller.Edit(product, null);

            controller.Dispose();
            string actual = db.Products.Where(x => x.ProductID == product.ProductID).First().ProductName;

            //Assert
            //check and delete product
            Assert.AreEqual(nameExpected, actual);
            product                 = db.Products.Where(x => x.ProductID == product.ProductID).First();
            product.ProductName     = name;
            db.Entry(product).State = System.Data.Entity.EntityState.Deleted;
            db.SaveChanges();
            db.Dispose();
        }
Exemplo n.º 20
0
        public async Task CustomersReturnsDetails()
        {
            //Arrage
            DashbordCustomer customers = new DashbordCustomer()
            {
                CompanyName = "test"
            };

            await _customersControllerUnderTest.Create(customers);

            var customer = db.Customers.Where(c => c.CompanyName == customers.CompanyName).FirstOrDefault();

            //Act
            var result = await _customersControllerUnderTest.Details(customer.CustomerID) as ViewResult;

            //Assert
            Assert.IsNotNull(result);

            var customerss = db.Customers.Where(c => c.CustomerID == customer.CustomerID && c.CompanyName == customers.CompanyName);

            db.Customers.RemoveRange(customerss);
            db.SaveChanges();
        }
        public async Task OrderDetailReturnsEditEdits()
        {
            //Arrange
            Orders OrderTest = new Orders()
            {
                OrderID = 22, CustomerID = "ALFKI", EmployeeID = 3
            };
            Order_Details detailsTest = new Order_Details()
            {
                ProductID = 20, UnitPrice = 23, Quantity = 12, Discount = 1, Order = OrderTest
            };
            await _detailsControllerUnderTest.Create(detailsTest, OrderTest.OrderID);

            db.Entry(detailsTest).State = System.Data.Entity.EntityState.Added;

            var expectedDetails = db.Order_Details.Find(detailsTest.OrderID, detailsTest.ProductID);

            db.Dispose();
            detailsTest.UnitPrice = 43;
            detailsTest.Quantity  = 22;
            db = new NorthwindDatabase();

            //Act
            await _detailsControllerUnderTest.Edit(detailsTest);

            db.Entry(detailsTest).State = System.Data.Entity.EntityState.Modified;
            var actualDetails = db.Order_Details.Find(detailsTest.OrderID, detailsTest.ProductID);

            //Assert
            Assert.AreEqual(expectedDetails, actualDetails);


            var details = db.Order_Details.Where(o => o.OrderID == detailsTest.OrderID && o.ProductID == detailsTest.ProductID && o.UnitPrice == detailsTest.UnitPrice && o.Quantity == detailsTest.Quantity && o.Discount == detailsTest.Discount);
            var orders  = db.Orders.Find(OrderTest.OrderID);

            foreach (var orderdet in details)
            {
                db.Order_Details.Remove(orderdet);
            }

            db.Orders.Remove(orders);
            db.SaveChanges();
        }
        public async System.Threading.Tasks.Task SuppliersCreateItemAsync()
        {
            //Arrange
            var controller           = new NorthwindWeb.Controllers.SuppliersController();
            var db                   = new NorthwindDatabase();
            int SuppliersCountBefore = db.Suppliers.Count();
            var Suppliers            = new Suppliers()
            {
                CompanyName = "TestSuppliersCreate",
                ContactName = "contact",
            };

            //Act
            await controller.Create(Suppliers);

            //Assert
            Assert.AreEqual(SuppliersCountBefore + 1, db.Suppliers.Count());
            db.Entry(Suppliers).State = System.Data.Entity.EntityState.Deleted;
            db.SaveChanges();
            controller.Dispose();
            db.Dispose();
        }
Exemplo n.º 23
0
        public async Task TerritoryEditEdits()
        {
            //Arrange
            Region regionTest = new Region()
            {
                RegionID = 100, RegionDescription = "test"
            };
            Territories territoryTest = new Territories()
            {
                TerritoryID = "102", TerritoryDescription = "Aici", Region = regionTest
            };
            await _territoriesControllerTest.Create(territoryTest, regionTest.RegionID);

            db.Entry(territoryTest).State = System.Data.Entity.EntityState.Added;

            var expectedTerritory = db.Territories.Find(territoryTest.TerritoryID);

            db.Dispose();
            territoryTest.TerritoryDescription = "Acolo";
            db = new NorthwindDatabase();
            //Act
            await _territoriesControllerTest.Edit(territoryTest);

            db.Entry(territoryTest).State = System.Data.Entity.EntityState.Modified;
            var actualTerritory = db.Territories.Find(territoryTest.TerritoryID);

            //Assert
            Assert.AreEqual(expectedTerritory, actualTerritory);


            var territory = db.Territories.Where(t => (t.TerritoryDescription == "Aici") || (t.TerritoryDescription == "Acolo"));

            db.Territories.RemoveRange(territory);
            var regions = db.Regions.Where(t => t.RegionDescription.Contains(regionTest.RegionDescription));

            db.Regions.RemoveRange(regions);
            db.SaveChanges();
        }
Exemplo n.º 24
0
        public async System.Threading.Tasks.Task ProductDeleteItemAsync()
        {
            //Arrange
            var controller = new ProductController();
            var db         = new NorthwindDatabase();
            //create product
            var product = new Products()
            {
                ProductName = "test", CategoryID = 1, SupplierID = 1
            };

            db.Entry(product).State = System.Data.Entity.EntityState.Added;
            db.SaveChanges();

            //Act
            try
            {
                //run controller action
                await controller.DeleteConfirmed(product.ProductID);

                controller.Dispose();
            }
            catch (Exception ex)
            {
                //image not found
                if (!(ex is NullReferenceException))
                {
                    throw;
                }
            }
            //Assert
            //this will throw a InvalidOperationException
            if (db.Products.Any(x => x.ProductID == product.ProductID))
            {
                Assert.Fail();
            }
        }