示例#1
0
    def test_load_all_user_permissions(self):
        """
        Test the result of org_admin_views.load_all_user_permissions
        """

        uid = self.user_a.id
        perms = {
            uid: {
                "perms": {
                    "net.%d" % self.net.id: 0x01,
                    "fac": 0x03
                },
                "id":
                self.user_a.id,
                "name":
                "%s <%s> %s" % (self.user_a.full_name, self.user_a.email,
                                self.user_a.username),
            }
        }

        org_admin.save_user_permissions(self.org, self.user_a,
                                        perms[uid]["perms"])

        perms_all = org_admin.load_all_user_permissions(self.org)

        self.assertEqual(perms_all, perms)
示例#2
0
    def test_load_all_user_permissions(self):
        """
        Test the result of org_admin_views.load_all_user_permissions
        """

        uid = self.user_a.id
        perms = {
            uid: {
                "perms": {
                    "net.%d" % self.net.id: 0x01,
                    "fac": 0x03
                },
                "id": self.user_a.id,
                "name": "%s <%s> %s" %
                        (self.user_a.full_name, self.user_a.email,
                         self.user_a.username)
            }
        }

        org_admin.save_user_permissions(self.org, self.user_a,
                                        perms[uid]["perms"])

        perms_all = org_admin.load_all_user_permissions(self.org)

        self.assertEqual(perms_all, perms)
示例#3
0
    def test_org_admin_tools(self):
        """
        Test that users with create / delete permissions have access to the tools
        on the org management page
        """

        for tag in ["fac", "net", "ix"]:
            org_admin.save_user_permissions(self.org, self.user_a,
                                            {tag: PERM_CREATE})
            c = Client()
            c.login(username=self.user_a.username, password="******")
            resp = c.get("/org/%d" % self.org.id, follow=True)
            print(resp)

            for _tag in ["fac", "net", "ix"]:
                if _tag != tag:
                    assert f"#add_{_tag}" not in resp.content.decode()
            assert f"#add_{tag}" in resp.content.decode()
示例#4
0
    def test_org_admin_tools(self):
        """
        Test that users with create / delete permissions have access to the tools
        on the org management page
        """

        for tag in ["fac", "net", "ix"]:
            org_admin.save_user_permissions(self.org, self.user_a,
                                            {tag: PERM_CREATE})
            c = Client()
            c.login(username=self.user_a.username, password="******")
            resp = c.get("/org/%d" % self.org.id, follow=True)
            print resp

            for _tag in ["fac", "net", "ix"]:
                if _tag != tag:
                    self.assertEqual(resp.content.find("#add_%s" % _tag), -1)
            self.assertGreater(resp.content.find("#add_%s" % tag), -1)
示例#5
0
    def test_org_admin_tools(self):
        """
        Test that users with create / delete permissions have access to the tools
        on the org management page
        """

        for tag in ["fac", "net", "ix"]:
            org_admin.save_user_permissions(self.org, self.user_a, {
                tag: PERM_CREATE
            })
            c = Client()
            c.login(username=self.user_a.username, password="******")
            resp = c.get("/org/%d" % self.org.id, follow=True)
            print resp

            for _tag in ["fac", "net", "ix"]:
                if _tag != tag:
                    self.assertEqual(resp.content.find("#add_%s" % _tag), -1)
            self.assertGreater(resp.content.find("#add_%s" % tag), -1)
示例#6
0
    def test_user_permissions(self):
        """
        Test the result of org_admin_views.user_permissions
        Test org_admin_views.save_user_permissions
        Test org_admin_views.load_user_permissions
        """

        # Test #1 - test user a's permission to the org
        request = self.factory.get("/org-admin/user_permissions?org_id=%d" %
                                   (self.org.id))
        request.user = self.org_admin

        uid = str(self.user_a.id)

        # we  make some temporary perms for user_a
        perms = {uid: {"net.%d" % self.net.id: 0x01, "fac": 0x03}}

        org_admin.save_user_permissions(self.org, self.user_a, perms[uid])

        resp = json.loads(org_admin.user_permissions(request).content)

        self.assertEqual(resp["status"], "ok")
        self.assertEqual(resp["user_permissions"], perms)

        # Test #2 - clear the perms we just made for this test
        org_admin.save_user_permissions(self.org, self.user_a, {})

        resp = json.loads(org_admin.user_permissions(request).content)
        self.assertEqual(resp["status"], "ok")
        self.assertEqual(resp["user_permissions"], {uid: {}})

        # Test #5 - no permissions to org

        request = self.factory.get("/org-admin/user_permissions?org_id=%d" %
                                   (self.org_other.id))
        request.user = self.org_admin

        resp = org_admin.user_permissions(request)
        self.assertEqual(resp.status_code, 403)
        self.assertEqual(json.loads(resp.content), {})
示例#7
0
    def test_user_permissions(self):
        """
        Test the result of org_admin_views.user_permissions
        Test org_admin_views.save_user_permissions
        Test org_admin_views.load_user_permissions
        """

        # Test #1 - test user a's permission to the org
        request = self.factory.get(
            "/org-admin/user_permissions?org_id=%d" % (self.org.id))
        request.user = self.org_admin

        uid = str(self.user_a.id)

        # we  make some temporary perms for user_a
        perms = {uid: {"net.%d" % self.net.id: 0x01, "fac": 0x03}}

        org_admin.save_user_permissions(self.org, self.user_a, perms[uid])

        resp = json.loads(org_admin.user_permissions(request).content)

        self.assertEqual(resp["status"], "ok")
        self.assertEqual(resp["user_permissions"], perms)

        # Test #2 - clear the perms we just made for this test
        org_admin.save_user_permissions(self.org, self.user_a, {})

        resp = json.loads(org_admin.user_permissions(request).content)
        self.assertEqual(resp["status"], "ok")
        self.assertEqual(resp["user_permissions"], {uid: {}})

        # Test #5 - no permissions to org

        request = self.factory.get(
            "/org-admin/user_permissions?org_id=%d" % (self.org_other.id))
        request.user = self.org_admin

        resp = org_admin.user_permissions(request)
        self.assertEqual(resp.status_code, 403)
        self.assertEqual(json.loads(resp.content), {})