Example #1
0
        public ActionResult Index(VehicleSalesViewModel VehicleSales)
        {
            var file  = VehicleSales.File;
            var model = new VehicleSalesViewModel();

            if (file != null)
            {
                try
                {
                    string path = Path.Combine(Server.MapPath("~/Uploads"), Path.GetFileName(file.FileName));
                    file.SaveAs(path);
                    var vehiclesalesdetails = _VehicleSalesInformation.ReadSalesInformation(path).GroupBy(o => o.Vehicle)
                                              .OrderByDescending(g => g.Count())
                                              .ToDictionary(g => g.Key, g => g.ToList());


                    ModelState.AddModelError("File uploaded successfully", "");
                    // model.File = new HttpPostedFileBase(); ;
                    model.VehicleSales = vehiclesalesdetails;
                }
                catch (Exception ex)
                {
                    ViewBag.Message = "ERROR:" + ex.Message.ToString();
                    ModelState.AddModelError("ERROR:", ex.Message.ToString());
                }
            }
            else
            {
                //  ViewBag.Message = "You have not specified a file.";
                ModelState.AddModelError("ERROR:", "You have not specified a file");
            }
            return(View("Index", model));
        }
        public void Upload_Action_Should_Store_Files_In_The_Upload_Folder()
        {
            //Object and variale declration
            VehicleSalesInformation vehicleSalesInformation = new VehicleSalesInformation();
            VehicleSalesViewModel   vehicleSalesViewModel   = new VehicleSalesViewModel();
            string solution_dir = TestContext.TestDir + "\\Uploads";
            string filename     = "testfile.csv";

            var httpContextMock = new Mock <HttpContextBase>();
            var serverMock      = new Mock <HttpServerUtilityBase>();

            serverMock.Setup(x => x.MapPath("~/Uploads")).Returns(solution_dir);
            httpContextMock.Setup(x => x.Server).Returns(serverMock.Object);

            var sut = new VehicleSalesController(vehicleSalesInformation);

            sut.ControllerContext = new ControllerContext(httpContextMock.Object, new RouteData(), sut);

            var fileMock = new Mock <HttpPostedFileBase>();

            fileMock.Setup(x => x.FileName).Returns(filename);
            vehicleSalesViewModel.File = fileMock.Object;
            var actual = sut.Index(vehicleSalesViewModel);

            fileMock.Verify(x => x.SaveAs(solution_dir + "\\" + filename));
        }
Example #3
0
        // GET: VehiclsSales
        public ActionResult Index()
        {
            var model = new VehicleSalesViewModel();

            return(View(model));
        }