dify/api/tests/unit_tests/libs/test_oauth_bearer.py

30 lines
1.0 KiB
Python

"""Unit tests for the openapi bearer-scope catalog and TokenKind registry."""
from __future__ import annotations
from unittest.mock import MagicMock
def test_apps_read_permitted_external_scope_present():
from libs.oauth_bearer import Scope
assert Scope.APPS_READ_PERMITTED_EXTERNAL.value == "apps:read:permitted-external"
def test_dfoe_token_kind_carries_apps_read_permitted_external():
from libs.oauth_bearer import Scope, build_registry
registry = build_registry(MagicMock(), MagicMock())
dfoe = next(k for k in registry.kinds() if k.prefix == "dfoe_")
assert Scope.APPS_READ_PERMITTED_EXTERNAL in dfoe.scopes
def test_dfoa_token_kind_does_not_carry_apps_read_permitted_external():
"""dfoa_ relies on Scope.FULL umbrella; the explicit permitted scope
is reserved for dfoe_."""
from libs.oauth_bearer import Scope, build_registry
registry = build_registry(MagicMock(), MagicMock())
dfoa = next(k for k in registry.kinds() if k.prefix == "dfoa_")
assert Scope.APPS_READ_PERMITTED_EXTERNAL not in dfoa.scopes