From 013947630f7134342106f0ac5a5ed5acc7aed754 Mon Sep 17 00:00:00 2001 From: Jeffery Date: Thu, 17 Sep 2026 08:23:28 +0000 Subject: [PATCH] =?UTF-8?q?test(sdlc-feat-assets):=20=E7=AC=AC=E4=B8=89?= =?UTF-8?q?=E6=AE=B5=E8=A3=9C=E4=B8=8A=E5=85=A9=E5=80=8B=20repo=20?= =?UTF-8?q?=E7=9A=84=E5=8D=80=E5=88=A5=E8=88=87=E9=87=8D=E8=B7=91=E7=9A=84?= =?UTF-8?q?=E8=A1=8C=E7=82=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 說明 --repo 與 --issue-repo 的差別、--base 要明講不讓腳本猜、重跑不會開出第二顆 PR, 以及提交中途失敗時不要自己回捲歷史。 --- test/sdlc-feat-assets.test.js | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/test/sdlc-feat-assets.test.js b/test/sdlc-feat-assets.test.js index 13e381d..b21771a 100644 --- a/test/sdlc-feat-assets.test.js +++ b/test/sdlc-feat-assets.test.js @@ -244,6 +244,28 @@ test('先開 PR 再停錶,且 PR 沒開成就不停錶', () => { assert.match(phase3, /工時要記在真的有做事的那段時間上/); }); +test('PR 的 repo 與議題的 repo 分開講清楚', () => { + assert.match(phase3, /--issue-repo/); + assert.match(phase3, /程式碼所在的 repo/); + assert.match(phase3, /工作包議題所在的/); + assert.match(phase3, /常常不是同一個/, '要說出為什麼需要兩個旗標'); +}); + +test('--base 要明講,不讓腳本猜', () => { + assert.match(phase3, /--base/); + assert.match(phase3, /不替你猜/); +}); + +test('重跑不會開出第二顆 PR,正本要說', () => { + assert.match(phase3, /重跑不會開出第二顆 PR/); + assert.match(phase3, /created/); +}); + +test('提交中途失敗的處置有交代,且明講不要自己回捲歷史', () => { + assert.match(phase3, /前面已經建立的那幾顆 commit/); + assert.match(phase3, /不要自己去回捲歷史/); +}); + test('兩支腳本都要求先試跑', () => { const dryRuns = phase3.match(/--dry-run/g) ?? []; assert.ok(dryRuns.length >= 2, `兩支寫入型腳本各要先試跑,只找到 ${dryRuns.length} 處`);