Browse Source

test(cli): mount the never-dispose plugin through --config

The headless shutdown probe needs a plugin that refuses to dispose, so
the second Ctrl+C has something to force past. Writing it to the Harness
home stopped working when the personal composition layer was deleted:
nothing is discovered there, the plugin never mounted, and the first
signal drained cleanly — leaving the second PTY action to time out.
Yichen Jiang 2 months ago
parent
commit
d8d487236f
1 changed files with 5 additions and 2 deletions
  1. 5 2
      apps/cli/tests/headless-shutdown.e2e.ts

+ 5 - 2
apps/cli/tests/headless-shutdown.e2e.ts

@@ -66,7 +66,10 @@ async function runHeadlessPtySmoke(): Promise<string> {
   try {
     const home = join(cwd, '.dsh')
     await mkdir(home, { recursive: true })
-    await writeFile(join(home, 'config.yaml'), [
+    // The overlay is named, not discovered: nothing is auto-loaded from the
+    // Harness home, and `-p` takes `--config` for exactly this reason.
+    const overlay = join(cwd, 'never-dispose.cordis.yml')
+    await writeFile(overlay, [
       '- insert:',
       '    - id: never-dispose',
       `      name: '${neverDisposePlugin}'`,
@@ -74,7 +77,7 @@ async function runHeadlessPtySmoke(): Promise<string> {
     ].join('\n'))
     const launch = resolveExampleLaunch({
       srcBin: dshBinScript,
-      configArgs: ['-p', 'never complete'],
+      configArgs: ['-p', 'never complete', '--config', overlay],
       tsconfigPath,
       env: {
         DSH_HOME: home,