def checkAccessPermissionsMember(test: TestCase, url: str, httpMethod: str, permissionType: PermissionType, user: User = None, redirectUrl: str = "", data: dict = {}) -> None: member = None if permissionType == PermissionType.TYPE_MEMBER: # Requesting user should be a member member = Member.objects.get(email='*****@*****.**') if user is None: user = User.objects.get(username='******') else: member = Member.objects.filter(user=user).first() if member is None: # The passed user was NOT yet a member, but should be one! member = Member.objects.get(email='*****@*****.**') member.user = user member.save() else: # Requesting user should NOT be a member if user is None: user = User.objects.get(username='******') else: member = Member.objects.filter(user=user).first() if member is not None: # The passed user was a member, but should NOT be one! member.user = None member.save() checkAccessPermissions(test, url, httpMethod, PermissionLevel.LEVEL_USER, user, redirectUrl, data)
def test_fail_form_enter(self): form_data = { 'username': '******', 'password1': 'password', # Password too easy so should fail 'password2': 'password', 'email': '*****@*****.**', } checkAccessPermissions(self, '/register', 'post', PermissionLevel.LEVEL_PUBLIC, data=form_data) user = User.objects.filter(username='******').first() self.assertIsNone(user)
def test_success_redirect(self): form_data = { 'username': '******', 'password1': 'thisactuallyneedstobeagoodpassword', 'password2': 'thisactuallyneedstobeagoodpassword', 'email': '*****@*****.**', } checkAccessPermissions(self, '/register', 'post', PermissionLevel.LEVEL_PUBLIC, redirectUrl='/register/success', data=form_data) user = User.objects.filter(username='******').first() self.assertIsNotNone(user) self.assertEquals(user.email, '*****@*****.**') self.assertTrue( user.check_password('thisactuallyneedstobeagoodpassword')) self.assertEqual(user.first_name, '')
def test_account_achievements(self): checkAccessPermissions(self, '/account/achievements', 'get', PermissionLevel.LEVEL_USER)
def test_public_achievements(self): checkAccessPermissions(self, '/achievements', 'get', PermissionLevel.LEVEL_PUBLIC)
def test_no_member_page(self): checkAccessPermissions(self, '/no_member', 'get', PermissionLevel.LEVEL_PUBLIC)
def test_public_calendar(self): checkAccessPermissions(self, '/calendar/', 'get', PermissionLevel.LEVEL_PUBLIC)
def test_register_success(self): checkAccessPermissions(self, '/register/success', 'get', PermissionLevel.LEVEL_PUBLIC)
def test_logout_redirect(self): checkAccessPermissions(self, settings.LOGOUT_URL, 'get', PermissionLevel.LEVEL_PUBLIC, redirectUrl=settings.LOGOUT_REDIRECT_URL)
def test_logout_success_when_logged_in(self): checkAccessPermissions(self, settings.LOGOUT_REDIRECT_URL, 'get', PermissionLevel.LEVEL_USER, redirectUrl=settings.LOGOUT_REDIRECT_URL)
def test_logout_success(self): checkAccessPermissions(self, settings.LOGOUT_REDIRECT_URL, 'get', PermissionLevel.LEVEL_PUBLIC)
def test_login(self): checkAccessPermissions(self, settings.LOGIN_URL, 'get', PermissionLevel.LEVEL_PUBLIC)
def test_homepage(self): checkAccessPermissions(self, '/', 'get', PermissionLevel.LEVEL_PUBLIC)
def test_old_google_calendar(self): checkAccessPermissions(self, '/calendar/google_html', 'get', PermissionLevel.LEVEL_PUBLIC)