Exemplo n.º 1
0
        public void DeleteTest()
        {
            ProductAdminController target = new ProductAdminController();

            var db = new DIENMAYQUYETTIENEntities();

            using (var scope = new TransactionScope())
            {
                var product = new Product
                {
                    ProductCode      = "Code",
                    ProductName      = "ProductName",
                    ProductTypeID    = db.ProductTypes.First().ID,
                    SalePrice        = 122,
                    OriginPrice      = 122,
                    InstallmentPrice = 122,
                    Quantity         = 122,
                    Avatar           = ""
                };
                db.Products.Add(product);
                db.SaveChanges();
                //test view delete
                var result1 = target.Delete(product.ID) as ViewResult;
                Assert.IsNotNull(result1);
                Assert.AreEqual(product.ID, (result1.Model as Product).ID);

                //test delete post
                var count   = db.Products.Count();
                var result2 = target.De(product.ID) as RedirectToRouteResult;
                Assert.IsNotNull(result2);
                Assert.AreEqual(count - 1, db.Products.Count());
            }
        }
Exemplo n.º 2
0
        public void TestDelete()
        {
            var db      = new DIENMAYQUYETTIENEntities();
            var product = new Product
            {
                ProductName      = "ProductName",
                ProductTypeID    = db.ProductTypes.First().ID,
                SalePrice        = 123,
                OriginPrice      = 123,
                InstallmentPrice = 123,
                Quantity         = 123,
                Avatar           = ""
            };

            var controller = new ProductAdminController();
            var context    = new Mock <HttpContextBase>();
            var session    = new Mock <HttpSessionStateBase>();

            session.Setup(s => s["Username"]).Returns("abc");
            context.Setup(c => c.Session).Returns(session.Object);
            controller.ControllerContext = new ControllerContext(context.Object, new RouteData(), controller);

            using (var scope = new TransactionScope())
            {
                db.Products.Add(product);
                db.SaveChanges();
                var count   = db.Products.Count();
                var result2 = controller.DeleteConfirmed(product.ID) as RedirectToRouteResult;
                Assert.IsNotNull(result2);
                Assert.AreEqual(count - 1, db.Products.Count());
            }
        }
Exemplo n.º 3
0
        public void TestCreate1()
        {
            var controller = new ProductAdminController();
            var result     = controller.Create() as ViewResult;

            Assert.IsNotNull(result);
            Assert.IsInstanceOfType(result.ViewData["ProductTypeID"], typeof(SelectList));
        }
Exemplo n.º 4
0
        public void CreateTest()
        {
            var controller = new ProductAdminController();
            var db         = new DmQT06Entities1();
            var result     = controller.Create() as ViewResult;

            Assert.IsNotNull(result);
            Assert.IsInstanceOfType(result.ViewData["product.ID"], typeof(SelectList));
        }
Exemplo n.º 5
0
        public void TestIndex()
        {
            var controller = new ProductAdminController();
            var result     = controller.Index() as ViewResult;
            var db         = new DIENMAYQUYETTIENEntities();

            Assert.IsNotNull(result);
            Assert.IsInstanceOfType(result.Model, typeof(List <Product>));
            Assert.AreEqual(db.Products.Count(), ((List <Product>)result.Model).Count);
        }
Exemplo n.º 6
0
        public void CreateGetTest()
        {
            var controller = new ProductAdminController();
            var result     = controller.Create() as ViewResult;

            Assert.IsNotNull(result);
            // Select List theo Mr Duy;
            Assert.IsInstanceOfType(result.ViewBag.ProductType, typeof(List <ProductType>));
            // Select List theo Mrs Chau;
            //Assert.IsInstanceOfType(result.ViewData["ProductType"], typeof(SelectList));
        }
Exemplo n.º 7
0
        public void TestDetails()
        {
            var controller = new ProductAdminController();
            var context    = new Mock <HttpContextBase>();

            context.Setup(c => c.Server.MapPath("~/App_Data/0")).Returns("~/App_Data/0");
            controller.ControllerContext = new ControllerContext(context.Object, new RouteData(), controller);

            var result = controller.Details(0) as FilePathResult;

            Assert.IsNotNull(result);
            Assert.AreEqual("images", result.ContentType);
            Assert.AreEqual("~/App_Data/0", result.FileName);
        }
Exemplo n.º 8
0
        public void TestCreate1()
        {
            var controller = new ProductAdminController();
            var context    = new Mock <HttpContextBase>();
            var session    = new Mock <HttpSessionStateBase>();

            context.Setup(c => c.Session).Returns(session.Object);
            controller.ControllerContext = new ControllerContext(context.Object, new RouteData(), controller);
            session.Setup(s => s["Username"]).Returns("abc");

            var result = controller.Create() as ViewResult;

            Assert.IsNotNull(result);
            Assert.IsInstanceOfType(result.ViewData["ProductTypeID"], typeof(SelectList));
        }
Exemplo n.º 9
0
        public void TestIndex()
        {
            var controller = new ProductAdminController();
            var context    = new Mock <HttpContextBase>();

            context.Setup(c => c.Session["UserName"]).Returns("abc");
            controller.ControllerContext = new ControllerContext(context.Object, new RouteData(), controller);

            var result = controller.Index() as ViewResult;
            var db     = new DIENMAYQUYETTIENEntities();

            Assert.IsNotNull(result);
            Assert.IsInstanceOfType(result.Model, typeof(List <Product>));
            Assert.AreEqual(db.Products.Count(), ((List <Product>)result.Model).Count);
        }
Exemplo n.º 10
0
        public void TestIndex()
        {
            var controller = new ProductAdminController();
            var context    = new Mock <HttpContextBase>();
            var session    = new Mock <HttpSessionStateBase>();

            context.Setup(c => c.Session).Returns(session.Object);
            controller.ControllerContext = new ControllerContext(context.Object, new RouteData(), controller);
            session.Setup(s => s["Username"]).Returns("abc");

            var result = controller.Index() as ViewResult;
            var db     = new DmQT06Entities1();

            Assert.IsNotNull(result);
            Assert.IsInstanceOfType(result.Model, typeof(List <Product>));
            Assert.AreEqual(db.Product.Count(), ((List <Product>)result.Model).Count);
            session.Setup(s => s["Username"]).Returns("null");
        }
        public void HandleEvent(AdminTabStripCreated eventMessage)
        {
            if (eventMessage.TabStripName == "product-edit")
            {
                ProductAdminController controller = new ProductAdminController(_productService, _genericAttributeService, _permissionService, _ShippingByWeightExtendedService);
                int productId      = Convert.ToInt32(HttpContext.Current.Request.RequestContext.RouteData.Values["id"]);
                var actionName     = "GetShippingList";
                var controllerName = "ProductAdmin";
                var routeValues    = new RouteValueDictionary()
                {
                    { "Namespaces", "Nop.Plugin.Shipping.ByWeightExtended.Controllers" },
                    { "area", null },
                    { "id", productId }
                };
                var urlHelper = new UrlHelper(eventMessage.Helper.ViewContext.RequestContext).Action(actionName, controllerName, routeValues);

                StringBuilder sb = new StringBuilder();
                sb.Append("<script>");
                sb.Append("$(document).ready(function() {");
                sb.Append("$('#product-edit > .nav-tabs').append('<li><a data-tab-name=\"spc-shipping-options\" data-toggle=\"tab\" href=\"#spc-shipping-options\">Shipping Options</a></li>');");
                sb.Append("$('#product-edit > .tab-content').append('<div class=\"tab-pane\" id=\"spc-shipping-options\"> Loading...</div>');});");
                sb.Append("$(document).one('click', 'a[data-tab-name=spc-shipping-options]', function() {$(this).tab('show');");
                sb.Append("$.ajax({async: true,cache: false,type: \"GET\",url:\"" + urlHelper + "\"}).done(function(data) {$('#spc-shipping-options').html(data);}); });");
                sb.Append("</script>");
                eventMessage.BlocksToRender.Add(new MvcHtmlString(sb.ToString()));

                //int id = Convert.ToInt32(System.Web.HttpContext.Current.Request.RequestContext.RouteData.Values["ID"]);
                //string urlHelper = new UrlHelper(eventMessage.Helper.ViewContext.RequestContext).Action("GetShippingList", "ProductAdmin",
                //new RouteValueDictionary() { { "area", "" }, { "Id", id } });
                //string script = string.Format(@"<script> $(document).ready(function(){{$('#{0}')
                //            .data('kendoTabStrip').append([{{text:""<b>{1}</b>"", encoded: false, contentUrl:'{2}'}}]);}}); </script>",
                //           eventMessage.TabStripName, "Shipping Options", urlHelper);
                //eventMessage.BlocksToRender.Add(new MvcHtmlString(script));

                // on product save, add/delete a productSpecification, so SevenSpikes ribbons can be used

                // free shipping should be by Royal Mail/Airmail etc an dnot by primary country

                // only show once product has been saved
            }
        }
Exemplo n.º 12
0
        public void TestEdit2()
        {
            var db              = new DIENMAYQUYETTIENEntities();
            var controller      = new ProductAdminController();
            var expectedProduct = db.Products.AsNoTracking().First();
            var context         = new Mock <HttpContextBase>();
            var request         = new Mock <HttpRequestBase>();
            var files           = new Mock <HttpFileCollectionBase>();
            var file            = new Mock <HttpPostedFileBase>();

            context.Setup(c => c.Request).Returns(request.Object);
            request.Setup(r => r.Files).Returns(files.Object);
            files.Setup(f => f["Avatar"]).Returns(file.Object);
            file.Setup(f => f.ContentLength).Returns(1);
            context.Setup(c => c.Server.MapPath("~/App_Data")).Returns("~/App_Data");
            controller.ControllerContext = new ControllerContext(context.Object, new RouteData(), controller);

            //var db = new DIENMAYQUYETTIENEntities();
            //var model = new Product();
            //model.ProductTypeID = db.ProductTypes.First().ID;
            //model.ProductName = "TenSP";
            //model.ProductCode = "TVI0001";
            //model.OriginPrice = 123;
            //model.SalePrice = 456;
            //model.InstallmentPrice = 789;
            //model.Quantity = 10;

            using (var scope = new TransactionScope())
            {
                var result0 = controller.Edit(expectedProduct) as RedirectToRouteResult;
                Assert.IsNotNull(result0);
                //file.Verify(f => f.SaveAs(It.Is<string>(s => s.StartsWith("~/App_Data/"))));
                Assert.AreEqual("Index", result0.RouteValues["action"]);

                file.Setup(f => f.ContentLength).Returns(0);
                var result1 = controller.Edit(expectedProduct) as RedirectToRouteResult;
                Assert.IsNotNull(result1);
                //Assert.IsInstanceOfType(result1.ViewData["ProductTypeID"], typeof(SelectList));
            }
        }
Exemplo n.º 13
0
        public void CreatePostTest()
        {
            var controller = new ProductAdminController();
            var context    = new Mock <HttpContextBase>();
            var request    = new Mock <HttpRequestBase>();
            var files      = new Mock <HttpFileCollectionBase>();
            var file       = new Mock <HttpPostedFileBase>();

            context.Setup(c => c.Request).Returns(request.Object);
            request.Setup(r => r.Files).Returns(files.Object);
            files.Setup(f => f["Imagefile"]).Returns(file.Object);
            file.Setup(f => f.ContentLength).Returns(1);
            context.Setup(c => c.Server.MapPath("~/Image")).Returns("~/Image");
            controller.ControllerContext = new ControllerContext(context.Object, new RouteData(), controller);

            var db    = new DIENMAYQUYETTIENEntities();
            var model = new Product();

            model.ProductTypeID    = db.ProductTypes.First().ID;
            model.ProductName      = "TenSP";
            model.ProductCode      = "TVI0001";
            model.OriginPrice      = 123;
            model.SalePrice        = 456;
            model.InstallmentPrice = 789;
            model.Quantity         = 10;

            using (var scope = new TransactionScope())
            {
                var result0 = controller.Create(model) as RedirectToRouteResult;
                Assert.IsNotNull(result0);
                file.Verify(f => f.SaveAs(It.Is <string>(s => s.StartsWith("~/Image/"))));
                Assert.AreEqual("Index", result0.RouteValues["action"]);

                file.Setup(f => f.ContentLength).Returns(0);
                var result1 = controller.Create(model) as ViewResult;
                Assert.IsNotNull(result1);
                // Select List theo Mr Duy;
                Assert.IsInstanceOfType(result1.ViewBag.ProductType, typeof(List <ProductType>));
            }
        }
Exemplo n.º 14
0
        public void TestEdit1()
        {
            // arrange
            var db = new DIENMAYQUYETTIENEntities();

            var expectedProduct = db.Products.First();

            var controller = new ProductAdminController();
            var session    = new Mock <HttpSessionStateBase>();
            var context    = new Mock <HttpContextBase>();

            //context.Setup(c => c.Session["Username"]).Returns("abc");
            context.Setup(c => c.Session).Returns(session.Object);
            controller.ControllerContext = new ControllerContext(context.Object, new RouteData(), controller);
            session.Setup(s => s["Username"]).Returns("abc");

            // act
            var result = controller.Edit(expectedProduct.ID) as ViewResult;

            Assert.IsNotNull(result);
            Assert.IsInstanceOfType(result.ViewData["ProductTypeID"], typeof(SelectList));
            //Assert.IsInstanceOfType(result.ViewBag.ProductTypes, typeof(List<ProductType>))
        }
Exemplo n.º 15
0
        public void UpdateTest()
        {
            var db = new DIENMAYQUYETTIENEntities();

            var pro = db.Products.First();

            var controller = new ProductAdminController();
            var session    = new Mock <HttpSessionStateBase>();
            var context    = new Mock <HttpContextBase>();

            context.Setup(c => c.Session).Returns(session.Object);
            controller.ControllerContext = new ControllerContext(context.Object, new RouteData(), controller);


            // act
            var result = controller.Edit(pro.ID) as ViewResult;

            Assert.IsNotNull(result);
            // Select List theo Mrs Chau;
            //Assert.IsInstanceOfType(result.ViewData["ProductType"], typeof(SelectList));
            // Select List theo Mr Duy;
            Assert.IsInstanceOfType(result.ViewBag.ProductType, typeof(List <ProductType>));
        }
Exemplo n.º 16
0
        public void TestIndex()
        {
            var controller = new ProductAdminController();
            var context    = new Mock <HttpContextBase>();
            var session    = new Mock <HttpSessionStateBase>();

            context.Setup(c => c.Session).Returns(session.Object);
            controller.ControllerContext = new ControllerContext(context.Object, new RouteData(), controller);
            session.Setup(s => s["Username"]).Returns("abc");

            var result = controller.Index() as ViewResult;
            var db     = new DIENMAYQUYETTIENEntities1();


            //Assert.IsNotNull(result);
            Assert.IsInstanceOfType(result.Model, typeof(List <Product>));
            Assert.AreEqual(db.Products.Count(), ((List <Product>)result.Model).Count);

            session.Setup(s => s["Username"]).Returns(null);
            var redirect = controller.Index() as RedirectToRouteResult;

            //Assert.AreEqual("Login", redirect.RouteValues["controller"]);
            Assert.AreEqual("Login", redirect.RouteValues["action"]);
        }