aboutsummaryrefslogtreecommitdiff
path: root/tests/drivers/analysis_cache_test.js
diff options
context:
space:
mode:
Diffstat (limited to 'tests/drivers/analysis_cache_test.js')
-rw-r--r--tests/drivers/analysis_cache_test.js4
1 files changed, 3 insertions, 1 deletions
diff --git a/tests/drivers/analysis_cache_test.js b/tests/drivers/analysis_cache_test.js
index 3ffde33..88bb4bd 100644
--- a/tests/drivers/analysis_cache_test.js
+++ b/tests/drivers/analysis_cache_test.js
@@ -1,4 +1,6 @@
// Repeated replies use cached results; edits, include updates and reopen invalidate them.
+// interpreted hosts (no jit) are far slower; ZC_TEST_TIMEOUT_SCALE stretches every deadline
+const TIMEOUT_SCALE = Number(process.env.ZC_TEST_TIMEOUT_SCALE) || 1;
const assert = require('assert'), cp = require('child_process'), path = require('path');
const uri = 'file:///cache/main.zc', text = 'include "dep.zc";\nfn main() { int n = 7; return n + value(); }';
const msgs = []; let id = 1;
@@ -26,7 +28,7 @@ if (process.argv[2] === '--wasm' || process.argv[2] === '--vm') {
const p = (wasm ? host.wasmProcess : host.vmProcess)(path.resolve(process.argv[3]), { log: () => {} });
const chunks = []; p.stdout.on('data', d => chunks.push(d)); msgs.forEach(m => p.stdin.write(frame(m))); out = Buffer.concat(chunks);
} else {
- const r = cp.spawnSync(process.argv[2], process.argv.slice(3), { input: Buffer.concat(msgs.map(frame)), timeout: 60000, maxBuffer: 16 << 20 });
+ const r = cp.spawnSync(process.argv[2], process.argv.slice(3), { input: Buffer.concat(msgs.map(frame)), timeout: 60000 * TIMEOUT_SCALE, maxBuffer: 16 << 20 });
assert.strictEqual(r.status, 0, String(r.stderr)); out = r.stdout;
}
const replies = new Map();