-
Notifications
You must be signed in to change notification settings - Fork 214
使用和编写测试
zerol edited this page May 25, 2022
·
1 revision
只需要在项目目录下运行 python -m test.test
即可,期间产生的文件都在临时目录下,不会污染你的 Emacs 环境。日志输出有两部分,Emacs 的日志在标准输出中,Python 的日志在项目目录下的 test.log
文件中。
如果你是在 GitHub Actions 中运行的测试,那么 test.log
可以在 Summary 下的 Artifacts 中下载。
-
python -m test.test
会运行test/test.py
中的test_entrypoint
函数,该函数会用 batch 模式启动一个干净的 Emacs,然后安装本项目的相关依赖,然后调用test/lsp-bridge-test.el
中的lsp-bridge-start-test
函数。 -
lsp-bridge-start-test
会启动 lsp-bridge 的 Python 进程并建立通信,然后调用test/test.py
中的start_test
函数。 -
start_test
会启动test
目录下的所有测试,通常的测试方法是往临时文件目录下写入代码,然后模拟用户移动光标和输入操作,最后验证操作后的 buffer 内容或者 Python 向 Emacs 发送的消息是否正确。
- 在
test/test_completion.py
中加入相应测试并在本地通过。 - 可能需要在
.github/workflows/test.yml
中增加相关 language server 依赖。 - 提交 PR 并确保能通过 GitHub Action 中的测试(补全相关可以仅测试 Linux 平台)。