path: fixing a test that breaks on some machines.

A win32-only test was verifying that path.win32._makeLong('C:')
would return the current working directory.  This would only work if
current working directory was also on the C: device.  Fix is to grab
the device letter for current working directory, and pass that to
_makeLong().

PR-URL: https://github.com/nodejs/node/pull/6067
Reviewed-By: Trott - Rich Trott <rtrott@gmail.com>
Reviewed-By: Joao Reis <reis@janeasystems.com>
Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Johan Bergström <bugs@bergstroem.nu>
This commit is contained in:
Mike Kaufman 2016-04-05 14:30:38 -07:00 committed by Rich Trott
parent c5afd98b48
commit 1384de29f7

View File

@ -561,7 +561,8 @@ if (common.isWindows) {
'\\\\?\\' + process.cwd().toLowerCase() + '\\foo\\bar');
assert.equal(path.win32._makeLong('foo/bar').toLowerCase(),
'\\\\?\\' + process.cwd().toLowerCase() + '\\foo\\bar');
assert.equal(path.win32._makeLong('C:').toLowerCase(),
const currentDeviceLetter = path.parse(process.cwd()).root.substring(0, 2);
assert.equal(path.win32._makeLong(currentDeviceLetter).toLowerCase(),
'\\\\?\\' + process.cwd().toLowerCase());
assert.equal(path.win32._makeLong('C').toLowerCase(),
'\\\\?\\' + process.cwd().toLowerCase() + '\\c');