test: skip sea tests with more accurate available disk space estimation · nodejs/node@bec88ce
@@ -5,7 +5,7 @@ const fixtures = require('../common/fixtures');
55const tmpdir = require('../common/tmpdir');
66const { inspect } = require('util');
778-const { readFileSync, copyFileSync } = require('fs');
8+const { readFileSync, copyFileSync, statSync } = require('fs');
99const {
1010 spawnSyncAndExitWithoutError,
1111} = require('../common/child_process');
@@ -61,9 +61,12 @@ function skipIfSingleExecutableIsNotSupported() {
6161tmpdir.refresh();
62626363// The SEA tests involve making a copy of the executable and writing some fixtures
64-// to the tmpdir. To be safe, ensure that at least 120MB disk space is available.
65-if (!tmpdir.hasEnoughSpace(120 * 1024 * 1024)) {
66-common.skip('Available disk space < 120MB');
64+// to the tmpdir. To be safe, ensure that the disk space has at least a copy of the
65+// executable and some extra space for blobs and configs is available.
66+const stat = statSync(process.execPath);
67+const expectedSpace = stat.size + 10 * 1024 * 1024;
68+if (!tmpdir.hasEnoughSpace(expectedSpace)) {
69+common.skip(`Available disk space < ${Math.floor(expectedSpace / 1024 / 1024)} MB`);
6770}
6871}
6972