summaryrefslogtreecommitdiff
path: root/test/parallel/test-perf-gc-crash.js
diff options
context:
space:
mode:
authorJames M Snell <jasnell@gmail.com>2021-07-27 10:06:13 -0700
committerlegendecas <legendecas@gmail.com>2021-08-02 12:39:21 +0800
commitafabd145d176ec49adafeecd6d820cf71783d3e0 (patch)
tree56cf3acc1bf54004c8b7f0b10c6dba50742bc4a1 /test/parallel/test-perf-gc-crash.js
parentba7368a1a9237ac3d5adfd858d405cb1101feed8 (diff)
downloadnode-new-afabd145d176ec49adafeecd6d820cf71783d3e0.tar.gz
perf_hooks: fix PerformanceObserver gc crash
Signed-off-by: James M Snell <jasnell@gmail.com> Fixes: https://github.com/nodejs/node/issues/39548 PR-URL: https://github.com/nodejs/node/pull/39550 Reviewed-By: Bryan English <bryan@bryanenglish.com> Reviewed-By: Chengzhong Wu <legendecas@gmail.com>
Diffstat (limited to 'test/parallel/test-perf-gc-crash.js')
-rw-r--r--test/parallel/test-perf-gc-crash.js25
1 files changed, 25 insertions, 0 deletions
diff --git a/test/parallel/test-perf-gc-crash.js b/test/parallel/test-perf-gc-crash.js
new file mode 100644
index 0000000000..d980e91a2f
--- /dev/null
+++ b/test/parallel/test-perf-gc-crash.js
@@ -0,0 +1,25 @@
+'use strict';
+
+require('../common');
+
+// Refers to https://github.com/nodejs/node/issues/39548
+
+// The test fails if this crashes. If it closes normally,
+// then all is good.
+
+const {
+ PerformanceObserver,
+} = require('perf_hooks');
+
+// We don't actually care if the observer callback is called here.
+const gcObserver = new PerformanceObserver(() => {});
+
+gcObserver.observe({ entryTypes: ['gc'] });
+
+gcObserver.disconnect();
+
+const gcObserver2 = new PerformanceObserver(() => {});
+
+gcObserver2.observe({ entryTypes: ['gc'] });
+
+gcObserver2.disconnect();