コード例 #1
0
        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();
        }
コード例 #2
0
        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();
        }
コード例 #3
0
        public async System.Threading.Tasks.Task EmployeesEditEditsAsync()
        {
            //Arrange
            Employees employeeTest = new Employees()
            {
                LastName = "test1", FirstName = "test1"
            };
            await _EmployeesControllerUnderTest.Create(employeeTest);

            _db.Entry(employeeTest).State = System.Data.Entity.EntityState.Added;

            var expectedEmployee = _db.Employees.Find(employeeTest.EmployeeID);

            _db.Dispose();
            employeeTest.LastName  = "test2";
            employeeTest.FirstName = "test2";
            _db = new NorthwindDatabase();

            //Act
            await _EmployeesControllerUnderTest.Edit(employeeTest);

            _db.Entry(employeeTest).State = System.Data.Entity.EntityState.Modified;
            var actualEmployee = _db.Employees.Find(employeeTest.EmployeeID);

            //Assert
            Assert.AreEqual(expectedEmployee, actualEmployee);

            DeleteTestFromDb();
        }
コード例 #4
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();
        }
コード例 #5
0
 /// <summary>
 /// Dispoze db context object.
 /// </summary>
 /// <param name="disposing"></param>
 protected override void Dispose(bool disposing)
 {
     if (disposing)
     {
         db.Dispose();
     }
     base.Dispose(disposing);
 }
コード例 #6
0
        public void RegionJsonTableFill()
        {
            //Arrange
            var controller  = new RegionsController();
            var db          = new NorthwindDatabase();
            var regionCount = db.Regions.Count();


            //Act
            var jsonData = controller.JsonTableFill("").Data as IQueryable <RegionData>;

            //Assert
            Assert.AreEqual(db.Regions.Count(), jsonData.Count());

            db.Dispose();
        }
コード例 #7
0
        public void ShipperJsonTableFill()
        {
            //Arrange
            var controller   = new ShippersController();
            var db           = new NorthwindDatabase();
            var shipperCount = db.Shippers.Count();


            //Act
            var jsonData = controller.JsonTableFill().Data as IQueryable <ShipperData>;

            //Assert
            Assert.AreEqual(db.Shippers.Count(), jsonData.Count());

            db.Dispose();
        }
コード例 #8
0
        public void CategoryJsonTableFill()
        {
            //Arrange
            var controller    = new CategoriesController();
            var db            = new NorthwindDatabase();
            var categoryCount = db.Categories.Count();


            //Act
            var jsonData = controller.JsonTableFill("").Data as IQueryable <CategoriesData>;

            //Assert
            Assert.AreEqual(db.Categories.Count(), jsonData.Count());

            db.Dispose();
        }
コード例 #9
0
        public void CustomersJsonTableFill()
        {
            //Arrange
            var controller     = new CustomersController();
            var db             = new NorthwindDatabase();
            var customersCount = db.Customers.Count();
            int draw           = 1;
            int row            = 20;

            //Act
            var jsonData = controller.JsonTableFill(draw, 0, row).Data as JsonDataTable;

            //Assert
            Assert.AreEqual(jsonData.draw, draw);
            Assert.AreEqual(jsonData.recordsTotal, customersCount);
            Assert.IsTrue(jsonData.recordsFiltered <= customersCount);
            db.Dispose();
        }
コード例 #10
0
        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();
        }
コード例 #11
0
        public void ProductsProducts()
        {
            //Arrange
            var controller      = new NorthwindWeb.Controllers.ProductsController();
            var db              = new NorthwindDatabase();
            int productCount    = db.Products.Count();
            int noProductOnPage = 10;

            //Act
            var resultView  = controller.Products("") as ViewResult;
            var modelResult = resultView.Model as PagedList.IPagedList <NorthwindWeb.ViewModels.ViewProductCategoryS>;

            //Assert
            Assert.IsNotNull(resultView);
            Assert.IsTrue(modelResult.TotalItemCount == productCount);
            Assert.IsTrue(modelResult.PageCount * noProductOnPage >= productCount);
            Assert.IsTrue(modelResult.PageNumber == 1);

            db.Dispose();
            controller.Dispose();
        }
コード例 #12
0
        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();
        }
コード例 #13
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();
        }
コード例 #14
0
        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();
        }
コード例 #15
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();
        }
コード例 #16
0
ファイル: DynamicQuery.cs プロジェクト: zyj0021/ALinq
 public void TestCleanup()
 {
     db.Log.Flush();
     db.Dispose();
 }