feat: 更新模块文档,添加详细说明和使用示例
This commit is contained in:
@@ -4,8 +4,6 @@ from __future__ import annotations
|
||||
|
||||
import time
|
||||
|
||||
import pytest
|
||||
|
||||
from minenasai.webtui.auth import AuthManager, AuthToken
|
||||
|
||||
|
||||
@@ -45,7 +43,7 @@ class TestAuthManager:
|
||||
def test_generate_token(self):
|
||||
"""测试生成令牌"""
|
||||
token = self.manager.generate_token("user1")
|
||||
|
||||
|
||||
assert token is not None
|
||||
assert len(token) > 20
|
||||
|
||||
@@ -53,7 +51,7 @@ class TestAuthManager:
|
||||
"""测试验证令牌"""
|
||||
token = self.manager.generate_token("user1")
|
||||
auth_token = self.manager.verify_token(token)
|
||||
|
||||
|
||||
assert auth_token is not None
|
||||
assert auth_token.user_id == "user1"
|
||||
|
||||
@@ -65,17 +63,17 @@ class TestAuthManager:
|
||||
def test_verify_expired_token(self):
|
||||
"""测试验证过期令牌"""
|
||||
token = self.manager.generate_token("user1", expires_in=0)
|
||||
|
||||
|
||||
# 等待过期
|
||||
time.sleep(0.1)
|
||||
|
||||
|
||||
auth_token = self.manager.verify_token(token)
|
||||
assert auth_token is None
|
||||
|
||||
def test_revoke_token(self):
|
||||
"""测试撤销令牌"""
|
||||
token = self.manager.generate_token("user1")
|
||||
|
||||
|
||||
assert self.manager.revoke_token(token) is True
|
||||
assert self.manager.verify_token(token) is None
|
||||
|
||||
@@ -88,9 +86,9 @@ class TestAuthManager:
|
||||
self.manager.generate_token("user1")
|
||||
self.manager.generate_token("user1")
|
||||
self.manager.generate_token("user2")
|
||||
|
||||
|
||||
count = self.manager.revoke_user_tokens("user1")
|
||||
|
||||
|
||||
assert count == 2
|
||||
assert self.manager.get_stats()["total_tokens"] == 1
|
||||
|
||||
@@ -98,7 +96,7 @@ class TestAuthManager:
|
||||
"""测试刷新令牌"""
|
||||
old_token = self.manager.generate_token("user1")
|
||||
new_token = self.manager.refresh_token(old_token)
|
||||
|
||||
|
||||
assert new_token is not None
|
||||
assert new_token != old_token
|
||||
assert self.manager.verify_token(old_token) is None
|
||||
@@ -108,9 +106,9 @@ class TestAuthManager:
|
||||
"""测试令牌元数据"""
|
||||
metadata = {"channel": "wework", "task_id": "123"}
|
||||
token = self.manager.generate_token("user1", metadata=metadata)
|
||||
|
||||
|
||||
auth_token = self.manager.verify_token(token)
|
||||
|
||||
|
||||
assert auth_token is not None
|
||||
assert auth_token.metadata == metadata
|
||||
|
||||
@@ -118,10 +116,10 @@ class TestAuthManager:
|
||||
"""测试清理过期令牌"""
|
||||
self.manager.generate_token("user1", expires_in=0)
|
||||
self.manager.generate_token("user2", expires_in=3600)
|
||||
|
||||
|
||||
time.sleep(0.1)
|
||||
count = self.manager.cleanup_expired()
|
||||
|
||||
|
||||
assert count == 1
|
||||
assert self.manager.get_stats()["total_tokens"] == 1
|
||||
|
||||
@@ -132,17 +130,17 @@ class TestSSHManager:
|
||||
def test_import_ssh_manager(self):
|
||||
"""测试导入 SSH 管理器"""
|
||||
from minenasai.webtui import SSHManager, get_ssh_manager
|
||||
|
||||
|
||||
manager = get_ssh_manager()
|
||||
assert isinstance(manager, SSHManager)
|
||||
|
||||
def test_ssh_manager_stats(self):
|
||||
"""测试 SSH 管理器统计"""
|
||||
from minenasai.webtui import SSHManager
|
||||
|
||||
|
||||
manager = SSHManager()
|
||||
stats = manager.get_stats()
|
||||
|
||||
|
||||
assert "active_sessions" in stats
|
||||
assert stats["active_sessions"] == 0
|
||||
|
||||
@@ -153,6 +151,6 @@ class TestWebTUIServer:
|
||||
def test_import_server(self):
|
||||
"""测试导入服务器"""
|
||||
from minenasai.webtui.server import app
|
||||
|
||||
|
||||
assert app is not None
|
||||
assert app.title == "MineNASAI Web TUI"
|
||||
|
||||
Reference in New Issue
Block a user