Пример #1
0
        public void GivenTypeIsPrivateHealthField_AndUserDoesntHaveAccessToAllFields_WhenIGenerateMapFieldsViewModel_ThenAPopulatedUploadWizardViewModelIsReturnedWithOnlyExpectedPrivateHealthFields()
        {
            var expectedPublicFields = Data.CustomFields.OrderBy(c => c.Name).OfType <PrivateHealthField>().ToList();

            expectedPublicFields.Insert(0,
                                        new PrivateHealthField
            {
                Id   = 0,
                Name = "Student Id"
            }
                                        );
            var viewModel = new UploadWizardFileViewModel
            {
                NumberOfFields = 1,
                File           = MockRepository.GenerateMock <HttpPostedFileBase>()
            };

            viewModel.File.Expect(f => f.InputStream).Return(new MemoryStream());
            IPermission permission = MockRepository.GenerateMock <IPermission>();

            permission.Expect(p => p.GrantAccess(User)).Throw(new EntityAccessUnauthorizedException());
            PermissionFactory.Current.Expect(m => m.Create("UploadCustomFieldData", Data.CustomFields.Last())).Return(permission);

            var model = Target.GenerateMapFieldsViewModel(viewModel, typeof(PrivateHealthField), User) as UploadWizardModel;

            Assert.IsNotNull(model);
            Assert.AreEqual(expectedPublicFields.Count - 1, model.CustomFields[0].CustomFields.Count());
        }
 public override ViewResult UploadWizardConfirmed(UploadWizardFileViewModel model)
 {
     if (ModelState.IsValid)
     {
         var page2Model = LogicManager.GenerateMapFieldsViewModel(model, typeof(PrivateHealthField), (EducationSecurityPrincipal)User);
         return(View("UploadWizard2", page2Model));
     }
     return(View(model));
 }
Пример #3
0
        public void GivenModelStateErrors_WhenUploadWizardConfirmed_ThenViewResultWithTheFirstModelReturned()
        {
            UploadWizardFileViewModel model = new UploadWizardFileViewModel();

            Target.ModelState.AddModelError("blah", "blerg");

            var result = Target.UploadWizardConfirmed(new UploadWizardFileViewModel()) as ViewResult;

            result.AssertGetViewModel <UploadWizardFileViewModel>();
        }
Пример #4
0
        public void GivenNoModelStateErrors_WhenUploadWizardConfirmed_ThenAViewResultIsReturned()
        {
            UploadWizardFileViewModel model = new UploadWizardFileViewModel();

            MockLogicManager.Expect(m => m.GenerateMapFieldsViewModel(model, typeof(PrivateHealthField), User)).Return(new UploadWizardModel());

            var result = Target.UploadWizardConfirmed(model) as ViewResult;

            Assert.IsNotNull(result);
            result.AssertGetViewModel <UploadWizardModel>();
        }
Пример #5
0
        public UploadWizardModel GenerateMapFieldsViewModel(UploadWizardFileViewModel model, Type t, EducationSecurityPrincipal user)
        {
            if (model == null)
            {
                throw new ArgumentNullException("model");
            }
            var blobAddress = DateTime.Now.Ticks + model.File.FileName;

            UploadFileToBlobStorage(blobAddress, model.File.InputStream);
            model.BlobAddress  = blobAddress;
            model.CustomFields = CreateCustomFieldSelectViewModelsToMap(model.NumberOfFields, t, user);
            return(model);
        }