Merge pull request #193 from openqj/feat-software-engineering-github
feat: software-engineering skill GitHub guarantees
This commit is contained in:
2 files changed
+158
-1
No files matched your search
@@ -0,0 +1,30 @@
|
||||
"""software-engineering 技能的 GitHub 保证:轻量关键词断言。
|
||||
|
||||
只断言正文与附录都含有 GitHub 保证的关键概念,不逐字背诵全文:
|
||||
主分支保护、merge commit、revert 回滚、PR 号要求、force-push 禁止、
|
||||
tag 发布、token 只进子进程环境。附录是播种随附版,正文改了附录
|
||||
没同步时,本测试在附录部分就会失败。
|
||||
"""
|
||||
|
||||
import unittest
|
||||
from pathlib import Path
|
||||
|
||||
SKILL = Path(__file__).resolve().parents[1] / "skills" / "software-engineering" / "SKILL.md"
|
||||
|
||||
KEYWORDS = ("主分支保护", "merge commit", "revert", "PR 号",
|
||||
"force-push", "tag", "子进程环境",
|
||||
"GET /tasks/{id}/pr/checks")
|
||||
|
||||
|
||||
class SoftwareEngineeringGithubTestCase(unittest.TestCase):
|
||||
def test_github_guarantees_in_body_and_appendix(self):
|
||||
text = SKILL.read_text(encoding="utf-8")
|
||||
main, sep, appendix = text.partition("## 附录:角色模板")
|
||||
self.assertTrue(sep, "appendix marker missing")
|
||||
for kw in KEYWORDS:
|
||||
self.assertIn(kw, main, kw)
|
||||
self.assertIn(kw, appendix, "appendix: " + kw)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
unittest.main()
|
||||
Reference in new issue
Block a user