30 lines
911 B
Python
30 lines
911 B
Python
import sys
|
||
import unittest
|
||
from pathlib import Path
|
||
from unittest import mock
|
||
|
||
|
||
SOURCE = Path(__file__).resolve().parents[1] / "src"
|
||
sys.path.insert(0, str(SOURCE))
|
||
|
||
from person_directory import AUTHOR, DESCRIPTION, HELP_ENTRIES, plugin
|
||
|
||
|
||
class PluginTests(unittest.TestCase):
|
||
def test_registers_declared_commands_and_author(self):
|
||
context = mock.Mock()
|
||
plugin(context)
|
||
registered = [
|
||
call.args[0]
|
||
for call in context.commands.register.call_args_list
|
||
]
|
||
self.assertEqual(AUTHOR, 'official')
|
||
self.assertEqual(DESCRIPTION, '查询当前群已配置人物、基本属性和别名')
|
||
self.assertEqual(HELP_ENTRIES, ('/人物列表 [页码] /people;/人物 [名称或别名] /person',))
|
||
self.assertIn('/人物列表', registered)
|
||
self.assertEqual(len(registered), 6)
|
||
|
||
|
||
if __name__ == "__main__":
|
||
unittest.main()
|