Exemplo n.º 1
0
 public ActionResult Edit(int id, CreateOrEditCustomerViewModel updatedCustomer)
 {
     if (ModelState.IsValid)
     {
         var customer = this.session.Load <Customer>(id);
         customer.Name      = updatedCustomer.Name;
         customer.VATNumber = updatedCustomer.VATNumber;
         this.session.Update(customer);
         return(RedirectToAction("Index"));
     }
     return(View(updatedCustomer));
 }
Exemplo n.º 2
0
        public void CreatingANewCustomer_AddsItToTheDb()
        {
            var controller = new CustomersController(this.session);

            var viewModel = new CreateOrEditCustomerViewModel {
                Name = "Pippo", VATNumber = "12345678901"
            };

            var result = controller.Create(viewModel);

            var redirectResult = result as RedirectToRouteResult;
            var action         = redirectResult.RouteValues["action"];

            var reportOnDb = this.session.Get <Customer>(1);

            reportOnDb.Should().Not.Be.Null();
        }
Exemplo n.º 3
0
        public void CreatingACustomerTwoTimes_IsNotAllowed()
        {
            this.session.Save(new Customer {
                Name = "Pippo", VATNumber = "12345678901"
            });
            var controller = new CustomersController(this.session);
            var viewModel  = new CreateOrEditCustomerViewModel {
                Name = "Pippo", VATNumber = "12345678901"
            };

            var result = controller.Create(viewModel);

            var viewResult = result as ViewResult;

            viewResult.Should().Not.Be.Null();
            var error = viewResult.ViewData.ModelState["VATNumber"].Errors[0];

            Assert.AreEqual("Un cliente con stessa partita Iva è già presente.", error.ErrorMessage);
        }
Exemplo n.º 4
0
        public void UpdatingACustomer_ChangesItsDataOnDb()
        {
            this.session.Save(new Customer {
                Name = "Pippo", VATNumber = "12345678901"
            });
            var controller      = new CustomersController(this.session);
            var newName         = "Mario";
            var newVat          = "12345678902";
            var updatedCustomer = new CreateOrEditCustomerViewModel {
                Name = newName, VATNumber = newVat
            };

            var result = controller.Edit(1, updatedCustomer);

            var customerOnDb = this.session.Get <Customer>(1);

            customerOnDb.Should().Not.Be.Null();
            customerOnDb.Name.Should().Be.EqualTo(newName);
            customerOnDb.VATNumber.Should().Be.EqualTo(newVat);
        }
Exemplo n.º 5
0
        public ActionResult Create(CreateOrEditCustomerViewModel newCustomer)
        {
            var existing = this.session.QueryOver <Customer>()
                           .Where(x => x.VATNumber == newCustomer.VATNumber)
                           .SingleOrDefault();

            if (existing != null)
            {
                ModelState.AddModelError("VATNumber", "Un cliente con stessa partita Iva è già presente.");
            }

            if (ModelState.IsValid)
            {
                var customer = new Customer {
                    Name = newCustomer.Name, VATNumber = newCustomer.VATNumber
                };
                this.session.Save(customer);
                return(RedirectToAction("Index"));
            }
            return(View(newCustomer));
        }