Index: node_modules/node-gyp/test/test-install.js
===================================================================
--- node_modules/node-gyp/test/test-install.js	(revision 81bc7da776d8cda42939ef4ab350c88d13b4941f)
+++ node_modules/node-gyp/test/test-install.js	(revision 81bc7da776d8cda42939ef4ab350c88d13b4941f)
@@ -0,0 +1,46 @@
+'use strict'
+
+const { test } = require('tap')
+const { test: { install } } = require('../lib/install')
+const log = require('npmlog')
+
+log.level = 'error' // we expect a warning
+
+test('EACCES retry once', async (t) => {
+  t.plan(3)
+
+  const fs = {
+    promises: {
+      stat (_) {
+        const err = new Error()
+        err.code = 'EACCES'
+        t.ok(true)
+        throw err
+      }
+    }
+  }
+
+  const Gyp = {
+    devDir: __dirname,
+    opts: {
+      ensure: true
+    },
+    commands: {
+      install (argv, cb) {
+        install(fs, Gyp, argv).then(cb, cb)
+      },
+      remove (_, cb) {
+        cb()
+      }
+    }
+  }
+
+  try {
+    await install(fs, Gyp, [])
+  } catch (err) {
+    t.ok(true)
+    if (/"pre" versions of node cannot be installed/.test(err.message)) {
+      t.ok(true)
+    }
+  }
+})
