ForcePilot/backend/test/unit/channels/test_wechat_adapter.py

50 lines
1.8 KiB
Python
Raw Normal View History

from __future__ import annotations
import pytest
from yuxi.channels.adapters.wechat import __all__ as wechat_all
class TestWeChatModuleInit:
def test_module_exports_basic_components(self):
assert "WeChatAdapter" in wechat_all or "WECHAT_META" in wechat_all
def test_module_can_be_imported(self):
import yuxi.channels.adapters.wechat as wechat
assert wechat is not None
def test_errors_module_imports(self):
from yuxi.channels.adapters.wechat.errors import (
is_token_expired,
parse_mp_error,
parse_wecom_error,
)
assert callable(is_token_expired)
assert callable(parse_mp_error)
assert callable(parse_wecom_error)
def test_session_module_imports(self):
from yuxi.channels.adapters.wechat.session import (
build_session_route,
get_session_metadata,
)
assert callable(build_session_route)
assert callable(get_session_metadata)
def test_crypto_modules_import(self):
from yuxi.channels.adapters.wechat.mp.crypto import verify_signature as mp_verify
from yuxi.channels.adapters.wechat.wecom.crypto import verify_signature as wc_verify
assert callable(mp_verify)
assert callable(wc_verify)
def test_send_modules_import(self):
from yuxi.channels.adapters.wechat.wecom.send import build_wecom_text_payload
from yuxi.channels.adapters.wechat.mp.send import build_mp_news_payload
assert callable(build_wecom_text_payload)
assert callable(build_mp_news_payload)
def test_client_modules_import(self):
from yuxi.channels.adapters.wechat.mp.client import MPClient
from yuxi.channels.adapters.wechat.wecom.client import WeComClient
assert MPClient is not None
assert WeComClient is not None