def test_get_role_queryset_non_admin_username(self):
        """Test get_role_queryset as a non-admin supplying a username."""
        roles = self._setup_roles_for_role_username_queryset_tests()

        user = Mock(spec=User, admin=False, username="******")
        req = Mock(user=user,
                   method="GET",
                   query_params={"username": "******"})
        with self.assertRaises(PermissionDenied):
            get_role_queryset(req)
Example #2
0
 def test_get_role_queryset_admin(self):
     """Test get_role_queryset as an admin."""
     self._create_roles()
     user = Mock(spec=User, admin=True)
     req = Mock(user=user, query_params={})
     queryset = get_role_queryset(req)
     self.assertEquals(queryset.count(), 5)
 def test_get_role_queryset_put_none(self):
     """Test get_role_queryset as a user with no access."""
     self._create_roles()
     access = {"role": {"write": []}}
     user = Mock(spec=User, admin=False, access=access)
     req = Mock(user=user, method="PUT", query_params={})
     queryset = get_role_queryset(req)
     self.assertEquals(queryset.count(), 0)
 def test_get_role_queryset_put_some(self):
     """Test get_role_queryset as a user with one role access."""
     self._create_roles()
     access = {"role": {"write": [Role.objects.first().uuid]}}
     user = Mock(spec=User, admin=False, access=access)
     req = Mock(user=user, method="PUT", query_params={})
     queryset = get_role_queryset(req)
     self.assertEquals(queryset.count(), 1)
 def test_get_role_queryset_get_all(self):
     """Test get_role_queryset as a user with all access."""
     self._create_roles()
     access = {"role": {"read": ["*"]}}
     user = Mock(spec=User, admin=False, access=access)
     req = Mock(user=user, method="GET", query_params={})
     queryset = get_role_queryset(req)
     self.assertEquals(queryset.count(), 5)
Example #6
0
 def test_get_role_queryset_post_all(self):
     """Test get_role_queryset as a user with all access."""
     self._create_roles()
     access = {'role': {'write': ['*']}}
     user = Mock(spec=User, admin=False, access=access)
     req = Mock(user=user, method='PUT', query_params={})
     queryset = get_role_queryset(req)
     self.assertEquals(queryset.count(), 5)
 def test_get_role_queryset_admin_username_different(self):
     """Test get_role_queryset as an admin supplying a different username."""
     roles = self._setup_roles_for_role_username_queryset_tests()
     user = Mock(spec=User, admin=True, account="00001", username="******")
     req = Mock(user=user,
                method="GET",
                query_params={"username": "******"})
     queryset = get_role_queryset(req)
     self.assertEquals(list(queryset), [roles.first()])
     self.assertEquals(queryset.count(), 1)
Example #8
0
 def test_get_role_queryset_admin_username_different(self):
     """Test get_role_queryset as an admin supplying a different username."""
     roles = self._setup_roles_for_role_username_queryset_tests()
     user = Mock(spec=User, admin=True, account='00001', username='******')
     req = Mock(user=user,
                method='GET',
                query_params={'username': '******'})
     queryset = get_role_queryset(req)
     self.assertEquals(list(queryset), [roles.first()])
     self.assertEquals(queryset.count(), 1)
    def test_get_role_queryset_non_admin_username_different(self):
        """Test get_role_queryset as a non-admin supplying a different username."""
        roles = self._setup_roles_for_role_username_queryset_tests()

        user = Mock(spec=User, admin=False, username="******")
        req = Mock(user=user,
                   method="GET",
                   query_params={"username": "******"})
        queryset = get_role_queryset(req)
        self.assertEquals(list(queryset), [])
        self.assertEquals(queryset.count(), 0)
    def test_get_role_queryset_admin_username(self):
        """Test get_role_queryset as an admin supplying a username."""
        roles = self._setup_roles_for_role_username_queryset_tests()

        user = Mock(spec=User,
                    admin=True,
                    account="00001",
                    username="******")
        req = Mock(user=user,
                   method="GET",
                   query_params={"username": "******"})
        queryset = get_role_queryset(req)
        role = queryset.last()
        self.assertEquals(list(queryset), [roles.first()])
        self.assertEquals(queryset.count(), 1)
        self.assertTrue(hasattr(role, "accessCount"))
        self.assertTrue(hasattr(role, "policyCount"))
Example #11
0
    def test_get_role_queryset_admin_username(self):
        """Test get_role_queryset as an admin supplying a username."""
        roles = self._setup_roles_for_role_username_queryset_tests()

        user = Mock(spec=User,
                    admin=True,
                    account='00001',
                    username='******')
        req = Mock(user=user,
                   method='GET',
                   query_params={'username': '******'})
        queryset = get_role_queryset(req)
        role = queryset.last()
        self.assertEquals(list(queryset), [roles.first()])
        self.assertEquals(queryset.count(), 1)
        self.assertTrue(hasattr(role, 'accessCount'))
        self.assertTrue(hasattr(role, 'policyCount'))
    def test_get_role_queryset_principal_scope(self):
        """Test get_role_queryset with principal scope."""
        roles = self._setup_roles_for_role_username_queryset_tests()

        user = Mock(spec=User,
                    admin=True,
                    account="00001",
                    username="******")
        req = Mock(user=user,
                   method="GET",
                   query_params={
                       SCOPE_KEY: PRINCIPAL_SCOPE,
                       "username": "******"
                   })
        queryset = get_role_queryset(req)
        role = queryset.last()
        self.assertEquals(list(queryset), [roles.first()])
        self.assertEquals(queryset.count(), 1)
        self.assertTrue(hasattr(role, "accessCount"))
        self.assertTrue(hasattr(role, "policyCount"))
Example #13
0
    def test_get_role_queryset_principal_scope(self):
        """Test get_role_queryset with principal scope."""
        roles = self._setup_roles_for_role_username_queryset_tests()

        user = Mock(spec=User,
                    admin=True,
                    account='00001',
                    username='******')
        req = Mock(user=user,
                   method='GET',
                   query_params={
                       SCOPE_KEY: PRINCIPAL_SCOPE,
                       'username': '******'
                   })
        queryset = get_role_queryset(req)
        role = queryset.last()
        self.assertEquals(list(queryset), [roles.first()])
        self.assertEquals(queryset.count(), 1)
        self.assertTrue(hasattr(role, 'accessCount'))
        self.assertTrue(hasattr(role, 'policyCount'))
Example #14
0
 def get_queryset(self):
     """Obtain queryset for requesting user based on access."""
     return get_role_queryset(self.request)