From 6558dcbf75c0b4b749d42ec8678af0a8a728201f Mon Sep 17 00:00:00 2001 From: Masashi Hirano Date: Tue, 8 May 2018 02:16:18 +0900 Subject: [PATCH] test: add test for fs.promises.lchmod To increase test coverage for fs.promises by adding a test for lchmod. PR-URL: https://github.com/nodejs/node/pull/20584 Reviewed-By: James M Snell Reviewed-By: Ruben Bridgewater Reviewed-By: Richard Lau Reviewed-By: Michael Dawson --- test/parallel/test-fs-promises.js | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/test/parallel/test-fs-promises.js b/test/parallel/test-fs-promises.js index 7dccdea9bc2..d2e82243458 100644 --- a/test/parallel/test-fs-promises.js +++ b/test/parallel/test-fs-promises.js @@ -12,6 +12,7 @@ const { chmod, copyFile, link, + lchmod, lstat, mkdir, mkdtemp, @@ -129,7 +130,6 @@ function verifyStatObject(stat) { if (common.canCreateSymLink()) { const newLink = path.resolve(tmpDir, 'baz3.js'); await symlink(newPath, newLink); - stats = await lstat(newLink); verifyStatObject(stats); @@ -137,6 +137,14 @@ function verifyStatObject(stat) { (await realpath(newLink)).toLowerCase()); assert.strictEqual(newPath.toLowerCase(), (await readlink(newLink)).toLowerCase()); + if (common.isOSX) { + // lchmod is only available on macOS + const newMode = 0o666; + await lchmod(newLink, newMode); + stats = await lstat(newLink); + assert.strictEqual(stats.mode & 0o777, newMode); + } + await unlink(newLink); }