test(subagent): pin POSIX disposal scenarios

Pass an explicit Linux platform to the two remaining SIGTERM-specific ladder tests instead of inheriting the host platform.

This keeps their synchronous-exit assertions focused on the POSIX middle and final rungs while the dedicated Windows case continues to verify the direct SIGKILL path.

Without the pin, native Windows coverage deterministically expected SIGTERM but observed the intended SIGKILL-only behavior.
This commit is contained in:
Tianyi Cui
2026-07-19 12:20:11 +08:00
parent 4625195968
commit 46580e4083

View File

@@ -200,7 +200,7 @@ describe('disposeChildProcess', () => {
it('recognizes a child that exits synchronously on SIGTERM', async () => {
const fake = new FakeChild({ diesOn: 'SIGTERM', synchronousExit: true })
await disposeChildProcess(asChild(fake), { disposeEofGraceMs: 20, disposeGraceMs: 1000 })
await disposeChildProcess(asChild(fake), { disposeEofGraceMs: 20, disposeGraceMs: 1000 }, 'linux')
expect(fake.kills).toEqual(['SIGTERM'])
expect(fake.signalCode).toBe('SIGTERM')
expect(fake.listenerCount('exit')).toBe(0)
@@ -217,7 +217,7 @@ describe('disposeChildProcess', () => {
it('recognizes a child already gone when the final exit wait begins', async () => {
const fake = new FakeChild({ synchronousExit: true })
await disposeChildProcess(asChild(fake), { disposeEofGraceMs: 20, disposeGraceMs: 20 })
await disposeChildProcess(asChild(fake), { disposeEofGraceMs: 20, disposeGraceMs: 20 }, 'linux')
expect(fake.kills).toEqual(['SIGTERM', 'SIGKILL'])
expect(fake.signalCode).toBe('SIGKILL')
})