node/test/parallel/test-module-loading-error.js
cjihrig 4030c7e077
test: update windows module load error message
libuv 1.14.0 includes a fix for the "%1 is not a valid Win32
application" error message.

Refs: https://github.com/nodejs/node/pull/14866
PR-URL: https://github.com/nodejs/node/pull/14950
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
Reviewed-By: Tobias Nießen <tniessen@tnie.de>
Reviewed-By: Gibson Fahnestock <gibfahn@gmail.com>
Reviewed-By: Refael Ackermann <refack@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
2017-10-25 04:09:43 -04:00

36 lines
932 B
JavaScript

'use strict';
const common = require('../common');
const assert = require('assert');
const errorMessagesByPlatform = {
win32: ['is not a valid Win32 application'],
linux: ['file too short', 'Exec format error'],
sunos: ['unknown file type', 'not an ELF file'],
darwin: ['file too short'],
aix: ['Cannot load module',
'Cannot run a file that does not have a valid format.']
};
const dlerror_msg = errorMessagesByPlatform[process.platform];
if (!dlerror_msg)
common.skip('platform not supported.');
try {
require('../fixtures/module-loading-error.node');
} catch (e) {
assert.strictEqual(dlerror_msg.some((errMsgCase) => {
return e.toString().indexOf(errMsgCase) !== -1;
}), true);
}
try {
require();
} catch (e) {
assert.notStrictEqual(e.toString().indexOf('missing path'), -1);
}
try {
require({});
} catch (e) {
assert.notStrictEqual(e.toString().indexOf('path must be a string'), -1);
}