node/test/pummel
Tobias Nießen 609d2b0ff2
test: add and use tmpdir.hasEnoughSpace()
In general, we assume that the tmpdir will provide sufficient space for
most tests. Some tests, however, require hundreds of megabytes or even
gigabytes of space, which often causes them to fail, especially on our
macOS infrastructure. The most recent reliability report contains more
than 20 related CI failures.

This change adds a new function hasEnoughSpace() to the tmpdir module
that uses statfsSync() to guess whether allocating a certain amount of
space within the temporary directory will succeed.

This change also updates the most frequently failing tests to use the
new function such that the relevant parts of the tests are skipped if
tmpdir has insufficient space.

Refs: https://github.com/nodejs/reliability/issues/549
PR-URL: https://github.com/nodejs/node/pull/47767
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
Reviewed-By: Richard Lau <rlau@redhat.com>
2023-05-01 15:23:49 +00:00
..
pummel.status
test-child-process-spawn-loop.js
test-crypto-dh-hash.js
test-crypto-dh-keys.js
test-crypto-timing-safe-equal-benchmarks.js test: add trailing commas in test/pummel 2023-02-12 17:36:39 +01:00
test-dh-regr.js test: add trailing commas in test/pummel 2023-02-12 17:36:39 +01:00
test-fs-largefile.js
test-fs-readfile-tostring-fail.js test: add and use tmpdir.hasEnoughSpace() 2023-05-01 15:23:49 +00:00
test-fs-watch-file-slow.js
test-fs-watch-file.js test: add trailing commas in test/pummel 2023-02-12 17:36:39 +01:00
test-fs-watch-non-recursive.js
test-fs-watch-system-limit.js
test-hash-seed.js
test-heapdump-dns.js test: add trailing commas in test/pummel 2023-02-12 17:36:39 +01:00
test-heapdump-env.js src: bootstrap Web [Exposed=*] APIs in the shadow realm 2023-03-16 00:22:06 +08:00
test-heapdump-fs-promise.js src: fix AliasedBuffer memory attribution in heap snapshots 2023-03-01 17:45:04 +01:00
test-heapdump-http2.js test: add trailing commas in test/pummel 2023-02-12 17:36:39 +01:00
test-heapdump-inspector.js test: add trailing commas in test/pummel 2023-02-12 17:36:39 +01:00
test-heapdump-tls.js test: add trailing commas in test/pummel 2023-02-12 17:36:39 +01:00
test-heapdump-worker.js test: add trailing commas in test/pummel 2023-02-12 17:36:39 +01:00
test-heapdump-zlib.js test: add trailing commas in test/pummel 2023-02-12 17:36:39 +01:00
test-heapsnapshot-near-heap-limit-big.js test: add trailing commas in test/pummel 2023-02-12 17:36:39 +01:00
test-heapsnapshot-near-heap-limit-bounded.js test: add trailing commas in test/pummel 2023-02-12 17:36:39 +01:00
test-heapsnapshot-near-heap-limit-by-api.js test: add trailing commas in test/pummel 2023-02-12 17:36:39 +01:00
test-heapsnapshot-near-heap-limit.js test: add trailing commas in test/pummel 2023-02-12 17:36:39 +01:00
test-http-many-keep-alive-connections.js test: add trailing commas in test/pummel 2023-02-12 17:36:39 +01:00
test-http-upload-timeout.js test: add trailing commas in test/pummel 2023-02-12 17:36:39 +01:00
test-https-large-response.js test: add trailing commas in test/pummel 2023-02-12 17:36:39 +01:00
test-https-no-reader.js test: add trailing commas in test/pummel 2023-02-12 17:36:39 +01:00
test-keep-alive.js test: add trailing commas in test/pummel 2023-02-12 17:36:39 +01:00
test-net-bytes-per-incoming-chunk-overhead.js
test-net-many-clients.js
test-net-pause.js
test-net-pingpong-delay.js
test-net-pingpong.js
test-net-throttle.js test: add trailing commas in test/pummel 2023-02-12 17:36:39 +01:00
test-net-timeout2.js
test-net-timeout.js
test-net-write-callbacks.js
test-next-tick-infinite-calls.js
test-policy-integrity-dep.js test: add trailing commas in test/pummel 2023-02-12 17:36:39 +01:00
test-policy-integrity-parent-commonjs.js test: add trailing commas in test/pummel 2023-02-12 17:36:39 +01:00
test-policy-integrity-parent-module.js test: add trailing commas in test/pummel 2023-02-12 17:36:39 +01:00
test-policy-integrity-parent-no-package-json.js test: add trailing commas in test/pummel 2023-02-12 17:36:39 +01:00
test-policy-integrity-worker-commonjs.js test: add trailing commas in test/pummel 2023-02-12 17:36:39 +01:00
test-policy-integrity-worker-module.js test: add trailing commas in test/pummel 2023-02-12 17:36:39 +01:00
test-policy-integrity-worker-no-package-json.js test: add trailing commas in test/pummel 2023-02-12 17:36:39 +01:00
test-process-cpuUsage.js
test-process-hrtime.js
test-regress-GH-892.js test: add trailing commas in test/pummel 2023-02-12 17:36:39 +01:00
test-stream-pipe-multi.js
test-timers.js
test-tls-server-large-request.js test: add trailing commas in test/pummel 2023-02-12 17:36:39 +01:00
test-tls-throttle.js test: add trailing commas in test/pummel 2023-02-12 17:36:39 +01:00
test-vm-memleak.js
test-vm-race.js test: add trailing commas in test/pummel 2023-02-12 17:36:39 +01:00
test-watch-file.js
test-webcrypto-derivebits-pbkdf2.js test: add trailing commas in test/pummel 2023-02-12 17:36:39 +01:00
test-worker-take-heapsnapshot.js test: add trailing commas in test/pummel 2023-02-12 17:36:39 +01:00
testcfg.py