test(e2e): keep tui pty smoke off arm gateway runs

This commit is contained in:
Vincent Koc
2026-06-04 09:50:20 -07:00
parent d3cabb0fc6
commit 7dead6537a
4 changed files with 19 additions and 4 deletions

View File

@@ -27,7 +27,9 @@ env:
jobs:
tui-pty:
runs-on: ubuntu-24.04
timeout-minutes: 5
timeout-minutes: 8
env:
OPENCLAW_TUI_PTY_INCLUDE_LOCAL: "1"
steps:
- name: Checkout
uses: actions/checkout@v6
@@ -38,4 +40,4 @@ jobs:
install-bun: "false"
- name: Run TUI PTY tests
run: timeout --kill-after=30s 120s node scripts/run-vitest.mjs run --config test/vitest/vitest.tui-pty.config.ts
run: timeout --kill-after=30s 240s node scripts/run-vitest.mjs run --config test/vitest/vitest.tui-pty.config.ts

View File

@@ -22,6 +22,10 @@ describe("e2e vitest config", () => {
"src/gateway/sessions-history-http.test.ts",
BUNDLED_PLUGIN_E2E_TEST_GLOB,
]);
expect(e2eConfig.test?.exclude).toContain("src/tui/tui-pty-harness.e2e.test.ts");
const excludesTuiPtyLocal =
e2eConfig.test?.exclude?.includes("src/tui/tui-pty-local.e2e.test.ts") ?? false;
expect(excludesTuiPtyLocal).toBe(process.arch === "arm64");
expect(e2eConfig.test?.pool).toBe("threads");
expect(e2eConfig.test?.isolate).toBe(false);
expect(normalizeConfigPath(e2eConfig.test?.runner)).toBe("test/non-isolated-runner.ts");

View File

@@ -1544,8 +1544,10 @@ describe("package artifact reuse", () => {
const job = workflowJob(TUI_PTY_WORKFLOW, "tui-pty");
const step = workflowStep(job, "Run TUI PTY tests");
expect(job.env?.OPENCLAW_TUI_PTY_INCLUDE_LOCAL).toBe("1");
expect(job["timeout-minutes"]).toBe(8);
expect(step.run).toBe(
"timeout --kill-after=30s 120s node scripts/run-vitest.mjs run --config test/vitest/vitest.tui-pty.config.ts",
"timeout --kill-after=30s 240s node scripts/run-vitest.mjs run --config test/vitest/vitest.tui-pty.config.ts",
);
});
});

View File

@@ -24,7 +24,14 @@ const { projects: _projects, ...baseTest } = baseTestWithProjects as {
projects?: string[];
setupFiles?: string[];
};
const exclude = (baseTest.exclude ?? []).filter((p) => p !== "**/*.e2e.test.ts");
const tuiPtyExcludes = [
"src/tui/tui-pty-harness.e2e.test.ts",
...(process.arch === "arm64" ? ["src/tui/tui-pty-local.e2e.test.ts"] : []),
];
const exclude = [
...(baseTest.exclude ?? []).filter((p) => p !== "**/*.e2e.test.ts"),
...tuiPtyExcludes,
];
export default defineConfig({
...base,