test(tags): 驗證 categorizeTags 對 null/非字串 name 不拋例外
新增測試:含 null、name 為數字、缺 name 的項目皆歸為 skip,正常 name 維持 keep。測試共 65 項全數通過。 Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 4.8
parent
8b92e9739c
commit
50b626cf87
@@ -30,6 +30,18 @@ test('categorizeTags 將無名稱的 tag 標記為略過', () => {
|
||||
assert.equal(empty.action, 'skip')
|
||||
})
|
||||
|
||||
test('categorizeTags 對 null/非字串 name 的項目標記為略過(不拋例外)', () => {
|
||||
const odd = [null, { name: 123 }, {}, { name: 'v1' }]
|
||||
let result
|
||||
assert.doesNotThrow(() => {
|
||||
result = categorizeTags(odd, ['v1'])
|
||||
})
|
||||
assert.deepEqual(
|
||||
result.map((r) => r.action),
|
||||
['skip', 'skip', 'skip', 'keep'],
|
||||
)
|
||||
})
|
||||
|
||||
test('categorizeTags 在沒有任何 release 指定時刪除所有具名 tag', () => {
|
||||
const result = categorizeTags(tags, [])
|
||||
const deletes = result.filter(({ action }) => action === 'delete')
|
||||
|
||||
Reference in New Issue
Block a user