public void UploadCustomerFileViewModelValidator_Validate_FileHasInvalidContentType_ReturnsInvalidContentTypeError() { #region Arrange var testFile = new Mock <HttpPostedFileBase>(); testFile.Setup(x => x.ContentLength).Returns(30); testFile.Setup(x => x.ContentType).Returns(@"application/vnd.openxmlformats-officedocument.presentationml.presentation"); var model = new UploadCustomerFileViewModel { CustomerFile = testFile.Object }; #endregion #region Act var result = _validator.Validate(model); #endregion #region Assert Assert.IsFalse(result.IsValid); Assert.AreEqual(WebResources.InvalidContentType, result.Errors[0].ErrorMessage); #endregion }
public void UploadCustomerFileViewModelValidator_Validate_WordFileHasContentAndValidContentType_IsValid() { #region Arrange var testFile = new Mock <HttpPostedFileBase>(); testFile.Setup(x => x.ContentLength).Returns(30); testFile.Setup(x => x.ContentType).Returns(@"application/msword"); var model = new UploadCustomerFileViewModel { EditLevel = "Level One", CustomerFile = testFile.Object }; #endregion #region Act var result = _validator.Validate(model); #endregion #region Assert Assert.IsTrue(result.IsValid); #endregion }
public void UploadCustomerFileViewModelValidator_Validate_FileHasNoContent_ReturnsNoFileContentError() { #region Arrange var emptyTestFile = new Mock <HttpPostedFileBase>(); emptyTestFile.Setup(x => x.ContentLength).Returns(0); emptyTestFile.Setup(x => x.ContentType).Returns(@"application/msword"); var model = new UploadCustomerFileViewModel { CustomerFile = emptyTestFile.Object }; #endregion #region Act var result = _validator.Validate(model); #endregion #region Assert Assert.IsFalse(result.IsValid); Assert.AreEqual(WebResources.NoFileContent, result.Errors[0].ErrorMessage); #endregion }
public ActionResult UploadCustomerFile(string level) { var vm = new UploadCustomerFileViewModel { EditLevel = level, Levels = EnumExtensions.AsSelectListItems <LevelName>(), DisplayLevel = string.IsNullOrEmpty(level) }; return(PartialView("_UploadCustomerFile", vm)); }
public ActionResult UploadCustomerFile(UploadCustomerFileViewModel model) { var result = GetJsonSuccessResponse(); if (ModelState.IsValid) { try { if (_appUserContext.Current.CurrentCustomer != null) { var userName = _contextManager.UserManager.Name; var dateTimeNow = DateTime.Now; var diagram = new Model.Diagram { Level = model.EditLevel.GetEnumIntFromText <LevelName>(), CustomerId = _appUserContext.Current.CurrentCustomer.Id, Filename = Path.GetFileName(model.CustomerFile.FileName), DiagramNotes = model.Notes, MimeType = model.CustomerFile.ContentType, UpdatedDate = dateTimeNow, UpdatedBy = userName, InsertedDate = dateTimeNow, InsertedBy = userName }; using (var reader = new BinaryReader(model.CustomerFile.InputStream)) { diagram.DiagramData = reader.ReadBytes(model.CustomerFile.ContentLength); } _diagramService.Create(diagram); } } catch (Exception ex) { result = GetJsonErrorResponse(ex.Message); ExceptionPolicy.HandleException(ex, ExceptionPolicies.General); } } else { _contextManager.ResponseManager.StatusCode = 500; return(Json(new DataSourceResult { Errors = ModelState.GetModelStateMesssages().FirstOrDefault() })); } return(Json(result, JsonRequestBehavior.AllowGet)); }