public void GivenUserIsDataAdmin_WhenGrantAccess_ThenSucceed()
        {
            ManageAssignedOfferingPermission target = new ManageAssignedOfferingPermission(new StudentAssignedOffering { IsActive = true });
            EducationSecurityPrincipal user = CreateDataAdminUser();

            target.GrantAccess(user);
        }
コード例 #2
0
        public void GivenUserIsProvider_AndUserIsAssociatedWithDifferentProvidersThanAssignedOffering_WhenGrantAccess_ThenThrowException()
        {
            ManageAssignedOfferingPermission target = new ManageAssignedOfferingPermission(Data.StudentAssignedOfferings[0]);
            EducationSecurityPrincipal       user   = CreateProviderUser(Data.Providers.Where(p => p.Id != Data.StudentAssignedOfferings[0].ServiceOffering.ProviderId).ToList());

            target.ExpectException <EntityAccessUnauthorizedException>(() => target.GrantAccess(user));
        }
コード例 #3
0
        public void GivenUserIsSiteCoordinator_AndUserIsAssociatedWithAllSchools_WhenGrantAccess_ThenSucceed()
        {
            ManageAssignedOfferingPermission target = new ManageAssignedOfferingPermission(Data.StudentAssignedOfferings.First());
            EducationSecurityPrincipal       user   = CreateSiteCoordinatorUser(Data.Schools);

            target.GrantAccess(user);
        }
        public void GivenUserHasNoRoles_WhenGrantAccess_ThenThrowException()
        {
            ManageAssignedOfferingPermission target = new ManageAssignedOfferingPermission(new StudentAssignedOffering { IsActive = true });
            EducationSecurityPrincipal user = CreateUserWithNoRoles();

            target.ExpectException<EntityAccessUnauthorizedException>(() => target.GrantAccess(user));
        }
        public void GivenAssignedOfferingIsInactive_WhenGrantAccess_ThenThrowException()
        {
            ManageAssignedOfferingPermission target = new ManageAssignedOfferingPermission(new StudentAssignedOffering { IsActive = false });
            EducationSecurityPrincipal user = CreateDataAdminUser();

            target.ExpectException<EntityNotFoundException>(() => target.GrantAccess(user));
        }
コード例 #6
0
        public void GivenUserIsSiteCoordinator_AndUserIsAssociatedWithNoSchools_WhenGrantAccess_ThenThrowException()
        {
            ManageAssignedOfferingPermission target = new ManageAssignedOfferingPermission(Data.StudentAssignedOfferings.First());
            EducationSecurityPrincipal       user   = CreateSiteCoordinatorUser(new List <School>());

            target.ExpectException <EntityAccessUnauthorizedException>(() => target.GrantAccess(user));
        }
コード例 #7
0
        public void GivenUserIsSiteCoordinator_AndUserIsAssociatedWithDifferentSchoolsThanStudentInAssignedOffering_WhenGrantAccess_ThenThrowException()
        {
            ManageAssignedOfferingPermission target = new ManageAssignedOfferingPermission(Data.StudentAssignedOfferings.First());
            EducationSecurityPrincipal       user   = CreateSiteCoordinatorUser(Data.Schools.Where(s => s.Id != Data.StudentAssignedOfferings.First().Student.SchoolId).ToList());

            target.ExpectException <EntityAccessUnauthorizedException>(() => target.GrantAccess(user));
        }
コード例 #8
0
        public void GivenUserRoleIsUnknown_WhenGrantAccess_ThenThrowException()
        {
            ManageAssignedOfferingPermission target = new ManageAssignedOfferingPermission(Data.StudentAssignedOfferings[0]);
            EducationSecurityPrincipal       user   = CreateUserWithUnknownRole();

            target.ExpectException <EntityAccessUnauthorizedException>(() => target.GrantAccess(user));
        }
コード例 #9
0
        public void GivenUserIsProvider_AndUserIsAssociatedWithNoProviders_WhenGrantAccess_ThenThrowException()
        {
            ManageAssignedOfferingPermission target = new ManageAssignedOfferingPermission(Data.StudentAssignedOfferings[0]);
            EducationSecurityPrincipal       user   = CreateProviderUser(new List <Provider>());

            target.ExpectException <EntityAccessUnauthorizedException>(() => target.GrantAccess(user));
        }
        public void GivenUserIsProvider_AndUserIsAssociatedWithAllProviders_AndAssignedOfferingStudentApprovedNoProviders_WhenGrantAccess_ThenThrowException()
        {
            ManageAssignedOfferingPermission target = new ManageAssignedOfferingPermission(Data.StudentAssignedOfferings[0]);
            EducationSecurityPrincipal user = CreateProviderUser(Data.Providers);
            Data.StudentAssignedOfferings[0].Student.ApprovedProviders.Clear();

            target.ExpectException<EntityAccessUnauthorizedException>(() => target.GrantAccess(user));
        }
コード例 #11
0
        public void GivenUserHasNoRoles_WhenGrantAccess_ThenThrowException()
        {
            ManageAssignedOfferingPermission target = new ManageAssignedOfferingPermission(new StudentAssignedOffering {
                IsActive = true
            });
            EducationSecurityPrincipal user = CreateUserWithNoRoles();

            target.ExpectException <EntityAccessUnauthorizedException>(() => target.GrantAccess(user));
        }
コード例 #12
0
        public void GivenAssignedOfferingIsInactive_WhenGrantAccess_ThenThrowException()
        {
            ManageAssignedOfferingPermission target = new ManageAssignedOfferingPermission(new StudentAssignedOffering {
                IsActive = false
            });
            EducationSecurityPrincipal user = CreateDataAdminUser();

            target.ExpectException <EntityNotFoundException>(() => target.GrantAccess(user));
        }
コード例 #13
0
        public void GivenUserIsDataAdmin_WhenGrantAccess_ThenSucceed()
        {
            ManageAssignedOfferingPermission target = new ManageAssignedOfferingPermission(new StudentAssignedOffering {
                IsActive = true
            });
            EducationSecurityPrincipal user = CreateDataAdminUser();

            target.GrantAccess(user);
        }
        public void GivenUserIsProvider_AndUserIsAssociatedWithAllProviders_AndAssignedOfferingStudentApprovedUserProvider_WhenGrantAccess_ThenSucceed()
        {
            var offering = Data.StudentAssignedOfferings[0];
            offering.Student.StudentAssignedOfferings = new List<StudentAssignedOffering> { offering };
            ManageAssignedOfferingPermission target = new ManageAssignedOfferingPermission(offering);
            EducationSecurityPrincipal user = CreateProviderUser(Data.Providers);

            target.GrantAccess(user);
        }
コード例 #15
0
        public void GivenUserIsSiteCoordinator_AndUserIsAssociatedWithAllSchools_AndServiceTypeForAssignedOfferingIsPrivate_WhenGrantAccess_ThenThrowException()
        {
            ManageAssignedOfferingPermission target = new ManageAssignedOfferingPermission(Data.StudentAssignedOfferings[0]);
            EducationSecurityPrincipal       user   = CreateSiteCoordinatorUser(Data.Schools);

            Data.StudentAssignedOfferings[0].ServiceOffering.ServiceType.IsPrivate = true;

            target.ExpectException <EntityAccessUnauthorizedException>(() => target.GrantAccess(user));
        }
コード例 #16
0
        public void GivenUserIsSiteCoordinator_AndUserIsAssociatedWithNoSchools_AndUserCreatedAssignedOffering_WhenGrantAccess_ThenSucceed()
        {
            ManageAssignedOfferingPermission target = new ManageAssignedOfferingPermission(Data.StudentAssignedOfferings[0]);
            EducationSecurityPrincipal       user   = CreateSiteCoordinatorUser(new List <School>());

            user.Identity.User.Id = 1;
            Data.StudentAssignedOfferings[0].CreatingUserId = 1;

            target.GrantAccess(user);
        }
コード例 #17
0
        public void GivenUserIsProvider_AndUserIsAssociatedWithAllProviders_AndAssignedOfferingStudentApprovedUserProvider_WhenGrantAccess_ThenSucceed()
        {
            var offering = Data.StudentAssignedOfferings[0];

            offering.Student.StudentAssignedOfferings = new List <StudentAssignedOffering> {
                offering
            };
            ManageAssignedOfferingPermission target = new ManageAssignedOfferingPermission(offering);
            EducationSecurityPrincipal       user   = CreateProviderUser(Data.Providers);

            target.GrantAccess(user);
        }
        public void GivenUserIsSiteCoordinator_AndUserIsAssociatedWithDifferentSchoolsThanStudentInAssignedOffering_WhenGrantAccess_ThenThrowException()
        {
            ManageAssignedOfferingPermission target = new ManageAssignedOfferingPermission(Data.StudentAssignedOfferings.First());
            EducationSecurityPrincipal user = CreateSiteCoordinatorUser(Data.Schools.Where(s => s.Id != Data.StudentAssignedOfferings.First().Student.SchoolId).ToList());

            target.ExpectException<EntityAccessUnauthorizedException>(() => target.GrantAccess(user));
        }
        public void GivenUserIsSiteCoordinator_AndUserIsAssociatedWithAllSchools_AndServiceTypeForAssignedOfferingIsPrivate_WhenGrantAccess_ThenThrowException()
        {
            ManageAssignedOfferingPermission target = new ManageAssignedOfferingPermission(Data.StudentAssignedOfferings[0]);
            EducationSecurityPrincipal user = CreateSiteCoordinatorUser(Data.Schools);
            Data.StudentAssignedOfferings[0].ServiceOffering.ServiceType.IsPrivate = true;

            target.ExpectException<EntityAccessUnauthorizedException>(() => target.GrantAccess(user));
        }
        public void GivenUserIsSiteCoordinator_AndUserIsAssociatedWithNoSchools_WhenGrantAccess_ThenThrowException()
        {
            ManageAssignedOfferingPermission target = new ManageAssignedOfferingPermission(Data.StudentAssignedOfferings.First());
            EducationSecurityPrincipal user = CreateSiteCoordinatorUser(new List<School>());

            target.ExpectException<EntityAccessUnauthorizedException>(() => target.GrantAccess(user));
        }
        public void GivenUserIsSiteCoordinator_AndUserIsAssociatedWithNoSchools_AndUserCreatedAssignedOffering_WhenGrantAccess_ThenSucceed()
        {
            ManageAssignedOfferingPermission target = new ManageAssignedOfferingPermission(Data.StudentAssignedOfferings[0]);
            EducationSecurityPrincipal user = CreateSiteCoordinatorUser(new List<School>());
            user.Identity.User.Id = 1;
            Data.StudentAssignedOfferings[0].CreatingUserId = 1;

            target.GrantAccess(user);
        }
        public void GivenUserRoleIsUnknown_WhenGrantAccess_ThenThrowException()
        {
            ManageAssignedOfferingPermission target = new ManageAssignedOfferingPermission(Data.StudentAssignedOfferings[0]);
            EducationSecurityPrincipal user = CreateUserWithUnknownRole();

            target.ExpectException<EntityAccessUnauthorizedException>(() => target.GrantAccess(user));
        }
        public void GivenNullUser_WhenGrantAccess_ThenThrowException()
        {
            ManageAssignedOfferingPermission target = new ManageAssignedOfferingPermission(new StudentAssignedOffering());

            target.ExpectException<ArgumentNullException>(() => target.GrantAccess(null));
        }
        public void GivenUserIsProvider_AndUserIsAssociatedWithDifferentProvidersThansAssignedOfferingStudentApproved_WhenGrantAccess_ThenThrowException()
        {
            Data.StudentAssignedOfferings[0].Student.ApprovedProviders = Data.Providers.Where(p => p != Data.StudentAssignedOfferings[0].ServiceOffering.Provider).Take(1).ToList();
            ManageAssignedOfferingPermission target = new ManageAssignedOfferingPermission(Data.StudentAssignedOfferings[0]);
            EducationSecurityPrincipal user = CreateProviderUser(Data.Providers.Where(p => !Data.StudentAssignedOfferings[0].Student.ApprovedProviders.Contains(p)).ToList());

            target.ExpectException<EntityAccessUnauthorizedException>(() => target.GrantAccess(user));
        }
        public void GivenUserIsSiteCoordinator_AndUserIsAssociatedWithAllSchools_WhenGrantAccess_ThenSucceed()
        {
            ManageAssignedOfferingPermission target = new ManageAssignedOfferingPermission(Data.StudentAssignedOfferings.First());
            EducationSecurityPrincipal user = CreateSiteCoordinatorUser(Data.Schools);

            target.GrantAccess(user);
        }
コード例 #26
0
        public void GivenNullUser_WhenGrantAccess_ThenThrowException()
        {
            ManageAssignedOfferingPermission target = new ManageAssignedOfferingPermission(new StudentAssignedOffering());

            target.ExpectException <ArgumentNullException>(() => target.GrantAccess(null));
        }