Featue: load_plugin 支持 pathlib.Path (#1194)

Co-authored-by: Ju4tCode <42488585+yanyongyu@users.noreply.github.com>
This commit is contained in:
Lan
2022-08-31 10:07:14 +08:00
committed by GitHub
parent 4e76518a58
commit 1cfdee2645
4 changed files with 45 additions and 25 deletions

View File

@ -1,4 +1,5 @@
import sys
from pathlib import Path
from dataclasses import asdict
from typing import TYPE_CHECKING, Set
@ -10,7 +11,21 @@ if TYPE_CHECKING:
@pytest.mark.asyncio
async def test_load_plugin(app: App, load_plugin: Set["Plugin"]):
async def test_load_plugin(app: App):
import nonebot
# check regular
assert nonebot.load_plugin("plugins.metadata")
# check path
assert nonebot.load_plugin(Path("plugins/export"))
# check not found
assert nonebot.load_plugin("some_plugin_not_exist") is None
@pytest.mark.asyncio
async def test_load_plugins(app: App, load_plugin: Set["Plugin"]):
import nonebot
from nonebot.plugin import PluginManager
@ -34,9 +49,6 @@ async def test_load_plugin(app: App, load_plugin: Set["Plugin"]):
with pytest.raises(RuntimeError):
PluginManager(search_path=["plugins"]).load_all_plugins()
# check not found
assert nonebot.load_plugin("some_plugin_not_exist") is None
@pytest.mark.asyncio
async def test_load_nested_plugin(app: App, load_plugin: Set["Plugin"]):