def test_is_editor_is_true_adds_permission_to_instance(self): org = OrganizationFactory() user = UserFactory(email='*****@*****.**') # Check that permission is False self.assertFalse(user.has_perm(GUARDIAN_PERMISSION, org)) # Need to pass {'is_admin': True} for clean_is_admin to validate request = RequestFactory() request.user = UserFactory.build() form = CustomOrganizationUserAddForm(request, org) form.cleaned_data = {'is_editor': True, 'is_admin': True, 'email': user.email} form.save() # Now it should be True self.assertTrue(user.has_perm(GUARDIAN_PERMISSION, org))
def test_is_editor_is_false_removes_permission_from_instance(self): org = OrganizationFactory() user = UserFactory(email='*****@*****.**') assign(GUARDIAN_PERMISSION, user, org) # Confirm permission is True self.assertTrue(user.has_perm(GUARDIAN_PERMISSION, org)) request = RequestFactory() request.user = UserFactory.build() form = CustomOrganizationUserAddForm(request, org) form.cleaned_data = {'is_editor': False, 'is_admin': True, 'email': user.email} form.save() # Now it should be False self.assertFalse(user.has_perm(GUARDIAN_PERMISSION, org))
def test_user_type_viewer_removes_permission_from_instance(self): """ When user_type is set to viewer, the permission is removed. """ org = OrganizationFactory() user = UserFactory(email='*****@*****.**') assign_perm(GUARDIAN_PERMISSION, user, org) # Confirm the user has the permission self.assertTrue(user.has_perm(GUARDIAN_PERMISSION, org)) request = RequestFactory() request.user = UserFactory.build() form = CustomOrganizationUserAddForm(request, org) form.cleaned_data = {'user_type': 'viewer', 'email': user.email} form.save() # Now they shouldn't have the permission self.assertFalse(user.has_perm(GUARDIAN_PERMISSION, org))
def test_user_type_editor_adds_permission_to_instance(self): """ When user_type is editor, the correct permission is set for that user for that organization. """ org = OrganizationFactory() user = UserFactory(email='*****@*****.**') # Check the user doesn't have the permission self.assertFalse(user.has_perm(GUARDIAN_PERMISSION, org)) request = RequestFactory() request.user = UserFactory.build() form = CustomOrganizationUserAddForm(request, org) form.cleaned_data = {'user_type': 'editor', 'email': user.email} form.save() # Now they should have the permission self.assertTrue(user.has_perm(GUARDIAN_PERMISSION, org))
def test_user_type_editor_adds_permission_to_instance(self): """ When user_type is editor, the correct permission is set for that user for that organization. """ org = OrganizationFactory() user = UserFactory(email='*****@*****.**') # Check the user doesn't have the permission self.assertFalse(user.has_perm(GUARDIAN_PERMISSION, org)) request = RequestFactory() request.user = UserFactory.build() form = CustomOrganizationUserAddForm(request, org) form.cleaned_data = {'user_type' : 'editor', 'email': user.email} form.save() # Now they should have the permission self.assertTrue(user.has_perm(GUARDIAN_PERMISSION, org))
def test_is_editor_is_false_removes_permission_from_instance(self): org = OrganizationFactory() user = UserFactory(email='*****@*****.**') assign(GUARDIAN_PERMISSION, user, org) # Confirm permission is True self.assertTrue(user.has_perm(GUARDIAN_PERMISSION, org)) request = RequestFactory() request.user = UserFactory.build() form = CustomOrganizationUserAddForm(request, org) form.cleaned_data = { 'is_editor': False, 'is_admin': True, 'email': user.email } form.save() # Now it should be False self.assertFalse(user.has_perm(GUARDIAN_PERMISSION, org))
def test_is_editor_is_true_adds_permission_to_instance(self): org = OrganizationFactory() user = UserFactory(email='*****@*****.**') # Check that permission is False self.assertFalse(user.has_perm(GUARDIAN_PERMISSION, org)) # Need to pass {'is_admin': True} for clean_is_admin to validate request = RequestFactory() request.user = UserFactory.build() form = CustomOrganizationUserAddForm(request, org) form.cleaned_data = { 'is_editor': True, 'is_admin': True, 'email': user.email } form.save() # Now it should be True self.assertTrue(user.has_perm(GUARDIAN_PERMISSION, org))
def test_is_editor_is_true_adds_permission_to_instance(self): """ When is_editor is ticked, the correct permission is set for that user for that organization. """ org = OrganizationFactory() user = UserFactory(email='*****@*****.**') # Check the user doesn't have the permission self.assertFalse(user.has_perm(GUARDIAN_PERMISSION, org)) request = RequestFactory() request.user = UserFactory.build() form = CustomOrganizationUserAddForm(request, org) # Need to pass {'is_admin': True} for clean_is_admin to validate form.cleaned_data = {'is_editor': True, 'is_admin': True, 'email': user.email} form.save() # Now they should have the permission self.assertTrue(user.has_perm(GUARDIAN_PERMISSION, org))
def test_user_type_field_is_present_and_choice_type(self): """ Check that the form contains a boolean for user_type, and that it has the expected initial value. """ request = RequestFactory() organization = OrganizationFactory() form = CustomOrganizationUserAddForm(request, organization) self.assertIn('user_type', form.fields) self.assertTrue(isinstance(form.fields['user_type'], ChoiceField))
def test_is_editor_is_false_removes_permission_from_instance(self): """ When is_editor gets unticked, the permission is removed. Also implicitly tests is_editor form field's required property because for a BooleanField, False is empty. """ org = OrganizationFactory() user = UserFactory(email='*****@*****.**') assign(GUARDIAN_PERMISSION, user, org) # Confirm the user has the permission self.assertTrue(user.has_perm(GUARDIAN_PERMISSION, org)) request = RequestFactory() request.user = UserFactory.build() form = CustomOrganizationUserAddForm(request, org) form.cleaned_data = {'is_editor': False, 'is_admin': True, 'email': user.email} form.save() # Now they shouldn't have the permission self.assertFalse(user.has_perm(GUARDIAN_PERMISSION, org))
def test_new_is_editor_field_is_present_and_boolean_type(self): """ Check that the form contains a boolean for is_editor, and that it has the expected initial value. """ request = RequestFactory() organization = OrganizationFactory() form = CustomOrganizationUserAddForm(request, organization) self.assertIn('is_editor', form.fields) self.assertTrue( isinstance(form.fields['is_editor'], BooleanField) ) self.assertTrue(form.fields['is_editor'].initial)
def test_new_is_editor_field_is_present_and_boolean_type(self): request = RequestFactory() organization = OrganizationFactory() form = CustomOrganizationUserAddForm(request, organization) self.assertTrue('is_editor' in form.fields) self.assertTrue(isinstance(form.fields['is_editor'], BooleanField))