mirror of
https://github.com/langgenius/dify.git
synced 2026-09-24 23:22:26 +08:00
fix: get role and list role need filter billing permission key (#38218)
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
This commit is contained in:
co-authored by
autofix-ci[bot]
parent
febcc4e054
commit
5bceac05eb
@@ -24,6 +24,7 @@ from flask import Flask
|
||||
from pydantic import ValidationError
|
||||
from werkzeug.exceptions import Forbidden, NotFound
|
||||
|
||||
from configs import dify_config
|
||||
from controllers.console.workspace import rbac as rbac_mod
|
||||
|
||||
|
||||
@@ -176,6 +177,20 @@ class TestPaginationMapping:
|
||||
):
|
||||
response = inspect.unwrap(rbac_mod.RBACRolesApi.get)(rbac_mod.RBACRolesApi())
|
||||
|
||||
owner_permission_keys = rbac_mod._LEGACY_ROLE_PERMISSION_KEYS["owner"]
|
||||
valid_owner_permission_keys = []
|
||||
for permission_key in owner_permission_keys:
|
||||
if not dify_config.BILLING_ENABLED and "billing" in permission_key:
|
||||
continue
|
||||
valid_owner_permission_keys.append(permission_key)
|
||||
|
||||
admin_permission_keys = rbac_mod._LEGACY_ROLE_PERMISSION_KEYS["admin"]
|
||||
valid_admin_permission_keys = []
|
||||
for permission_key in admin_permission_keys:
|
||||
if not dify_config.BILLING_ENABLED and "billing" in permission_key:
|
||||
continue
|
||||
valid_admin_permission_keys.append(permission_key)
|
||||
|
||||
assert response["data"] == [
|
||||
{
|
||||
"id": "owner",
|
||||
@@ -185,7 +200,7 @@ class TestPaginationMapping:
|
||||
"name": "owner",
|
||||
"description": "",
|
||||
"is_builtin": True,
|
||||
"permission_keys": list(dict.fromkeys(rbac_mod._LEGACY_ROLE_PERMISSION_KEYS["owner"])),
|
||||
"permission_keys": valid_owner_permission_keys,
|
||||
"role_tag": "owner",
|
||||
},
|
||||
{
|
||||
@@ -196,7 +211,7 @@ class TestPaginationMapping:
|
||||
"name": "admin",
|
||||
"description": "",
|
||||
"is_builtin": True,
|
||||
"permission_keys": list(dict.fromkeys(rbac_mod._LEGACY_ROLE_PERMISSION_KEYS["admin"])),
|
||||
"permission_keys": valid_admin_permission_keys,
|
||||
"role_tag": "",
|
||||
},
|
||||
]
|
||||
|
||||
@@ -133,7 +133,7 @@ class TestRoles:
|
||||
call = _call_args(mock_send)
|
||||
assert call.method == "GET"
|
||||
assert call.endpoint == "/rbac/roles/item"
|
||||
assert call.params == {"id": "role-1"}
|
||||
assert call.params == {"billing_enabled": True, "id": "role-1"}
|
||||
|
||||
def test_members_forwards_role_id_and_pagination(self, mock_send: MagicMock):
|
||||
mock_send.return_value = {
|
||||
|
||||
Reference in New Issue
Block a user