30 lines
806 B
Python
30 lines
806 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 draw_lot 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, 'jwebot')
|
|
self.assertEqual(DESCRIPTION, '抽取一条本地签文')
|
|
self.assertEqual(HELP_ENTRIES, ('/抽签',))
|
|
self.assertIn('/抽签', registered)
|
|
self.assertEqual(len(registered), 1)
|
|
|
|
|
|
if __name__ == "__main__":
|
|
unittest.main()
|