def setUp(self): super(CourseTests, self).setUp() self.course = factories.CourseFactory() self.course2 = factories.CourseFactory() self.user1 = UserFactory() self.user2 = UserFactory() self.user3 = UserFactory() self.group_a = factories.GroupFactory() self.group_b = factories.GroupFactory() self.user1.groups.add(self.group_a) self.user2.groups.add(self.group_b)
def setUpClass(cls): super(StateChangeEmailTests, cls).setUpClass() cls.user = UserFactory() cls.user_2 = UserFactory() cls.user_3 = UserFactory() cls.site = Site.objects.get(pk=settings.SITE_ID) cls.group = factories.GroupFactory() cls.user.groups.add(cls.group) cls.user_2.groups.add(cls.group) cls.user_3.groups.add(cls.group) cls.seat = factories.SeatFactory() cls.course_run = cls.seat.course_run cls.course = cls.course_run.course assign_perm(Course.VIEW_PERMISSION, cls.group, cls.course) # NOTE: We intentionally do NOT create an attribute for user_2. # By default this user WILL receive email notifications. UserAttributeFactory(user=cls.user, enable_email_notification=True) UserAttributeFactory(user=cls.user_3, enable_email_notification=False) toggle_switch('enable_publisher_email_notifications', True)
def test_is_publisher_user(self): """ Verify the function returns a boolean indicating if the user is part of any publisher app group. """ assert not is_publisher_user(self.user) self.user.groups.add(factories.GroupFactory()) assert is_publisher_user(self.user)
def setUp(self): super(CommentsEmailTests, self).setUp() self.user = UserFactory() self.user_2 = UserFactory() self.user_3 = UserFactory() self.site = Site.objects.get(pk=settings.SITE_ID) self.group = factories.GroupFactory(name='abc') self.user.groups.add(self.group) self.user_2.groups.add(self.group) self.user_3.groups.add(self.group) self.seat = factories.SeatFactory() self.course_run = self.seat.course_run self.course = self.course_run.course assign_perm(Course.VIEW_PERMISSION, self.group, self.course) # NOTE: We intentionally do NOT create an attribute for user_2. # By default this user WILL receive email notifications. UserAttributeFactory(user=self.user, enable_email_notification=True) UserAttributeFactory(user=self.user_3, enable_email_notification=False) toggle_switch('enable_publisher_email_notifications', True)
def create_non_staff_user_and_login(test_class): """ Create non staff user and login and return user and group. """ non_staff_user = UserFactory() group = factories.GroupFactory() test_class.client.logout() test_class.client.login(username=non_staff_user.username, password=USER_PASSWORD) return non_staff_user, group
def setUp(self): super(StudioInstanceCreatedEmailTests, self).setUp() self.user = UserFactory() self.group = factories.GroupFactory() self.user.groups.add(self.group) self.course_run = factories.CourseRunFactory() assign_perm(Course.VIEW_PERMISSION, self.group, self.course_run.course) UserAttributeFactory(user=self.user, enable_email_notification=True) toggle_switch('enable_publisher_email_notifications', True)
def setUp(self): super(CommentsTests, self).setUp() self.user = UserFactory(is_staff=True, is_superuser=True) self.group = factories.GroupFactory() self.user.groups.add(self.group) self.client.login(username=self.user.username, password=USER_PASSWORD) self.site = Site.objects.get(pk=settings.SITE_ID) self.course_edit_page = 'publisher:publisher_courses_edit' self.course_run_edit_page = 'publisher:publisher_course_runs_edit' self.seat_edit_page = 'publisher:publisher_seats_edit' self.edit_comment_page = 'publisher_comments:comment_edit' self.seat = factories.SeatFactory(type=Seat.PROFESSIONAL, credit_hours=0) self.course_run = self.seat.course_run self.course = self.course_run.course self.course.assign_permission_by_group(self.group) toggle_switch('enable_publisher_email_notifications', True)
def test_organization_extension_permission(self): """ Verify that required permissions assigned to OrganizationExtension object. """ test_organization = OrganizationFactory() test_group = factories.GroupFactory() post_data = { 'organization': test_organization.id, 'group': test_group.id } self.client.post(self.admin_page_url, data=post_data) organization_extension = OrganizationExtension.objects.get( organization=test_organization, group=test_group) course_team_permissions = [ OrganizationExtension.VIEW_COURSE, OrganizationExtension.EDIT_COURSE, OrganizationExtension.VIEW_COURSE_RUN, OrganizationExtension.EDIT_COURSE_RUN ] self._assert_permissions(organization_extension, test_group, course_team_permissions) marketing_permissions = [ OrganizationExtension.VIEW_COURSE, OrganizationExtension.EDIT_COURSE, OrganizationExtension.VIEW_COURSE_RUN ] self._assert_permissions(organization_extension, Group.objects.get(name=REVIEWER_GROUP_NAME), marketing_permissions) pc_permissions = [ OrganizationExtension.VIEW_COURSE, OrganizationExtension.EDIT_COURSE_RUN, OrganizationExtension.VIEW_COURSE_RUN ] self._assert_permissions( organization_extension, Group.objects.get(name=PROJECT_COORDINATOR_GROUP_NAME), pc_permissions)
def setUp(self): super(GroupOrganizationTests, self).setUp() self.organization_extension = factories.OrganizationExtensionFactory() self.group_2 = factories.GroupFactory()