def test_without_home_project(self): from pillar.api.blender_cloud import home_project self.user_id = self.create_user() with self.app.test_request_context(): changed = home_project.user_changed_role(None, {'_id': self.user_id}) self.assertFalse(changed)
def test_revoking_subscriber_role(self): from pillar.api.blender_cloud import home_project from pillar.api.utils.authentication import validate_token self.user_id = self.create_user(roles=set('subscriber')) self.create_valid_auth_token(self.user_id, 'token') with self.app.test_request_context(headers={'Authorization': self.make_header('token')}): validate_token() home_proj = home_project.create_home_project(self.user_id, write_access=True) changed = home_project.user_changed_role(None, {'_id': self.user_id, 'roles': []}) self.assertTrue(changed) # The home project should NOT be writable, so we should NOT be able to create a node. self.create_test_node(home_proj['_id'], 403)