diff options
author | Daniel Bevenius <daniel.bevenius@gmail.com> | 2016-09-28 20:14:23 +0200 |
---|---|---|
committer | James M Snell <jasnell@gmail.com> | 2016-10-06 10:27:30 -0700 |
commit | fdca79fbc0a797206fa690d51b8844ed4fd596d6 (patch) | |
tree | 868cff27a76b16595ef6b832140a6f7ccd8dcd1d | |
parent | 47d1588e7562b0476715c40c4c323edc30308cae (diff) | |
download | node-new-fdca79fbc0a797206fa690d51b8844ed4fd596d6.tar.gz |
test: enable addons test to pass with debug build
Currently when running configure with the --debug option in combination
with the tests (./configure --debug && make -j8 test) there are a few
addon tests that fail with error messages similar to this:
=== release test ===
Path: addons/load-long-path/test
fs.js:558
return binding.open(pathModule._makeLong(path), stringToFlags(flags),
mode);
^
Error: ENOENT: no such file or directory, open
'/nodejs/node/test/addons/load-long-path/build/Release/binding.node'
at Object.fs.openSync (fs.js:558:18)
at Object.fs.readFileSync (fs.js:468:33)
at Object.<anonymous>
(/nodejs/node/test/addons/load-long-path/test.js:28:19)
at Module._compile (module.js:560:32)
at Object.Module._extensions..js (module.js:569:10)
at Module.load (module.js:477:32)
at tryModuleLoad (module.js:436:12)
at Function.Module._load (module.js:428:3)
at Module.runMain (module.js:594:10)
at run (bootstrap_node.js:382:7)
Command: out/Release/node
/nodejs/node/test/addons/load-long-path/test.js
This commit allows for the tests to pass even if the configured build
type is of type debug.
PR-URL: https://github.com/nodejs/node/pull/8836
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Ilkka Myller <ilkka.myller@nodefield.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
24 files changed, 37 insertions, 33 deletions
diff --git a/test/addons/async-hello-world/test.js b/test/addons/async-hello-world/test.js index 2ed003e444..bbc81bfbf8 100644 --- a/test/addons/async-hello-world/test.js +++ b/test/addons/async-hello-world/test.js @@ -1,7 +1,7 @@ 'use strict'; const common = require('../../common'); var assert = require('assert'); -var binding = require('./build/Release/binding'); +const binding = require(`./build/${common.buildType}/binding`); binding(5, common.mustCall(function(err, val) { assert.equal(null, err); diff --git a/test/addons/at-exit/test.js b/test/addons/at-exit/test.js index c94453cb3b..4e2ca810f0 100644 --- a/test/addons/at-exit/test.js +++ b/test/addons/at-exit/test.js @@ -1,3 +1,3 @@ 'use strict'; -require('../../common'); -require('./build/Release/binding'); +const common = require('../../common'); +require(`./build/${common.buildType}/binding`); diff --git a/test/addons/buffer-free-callback/test.js b/test/addons/buffer-free-callback/test.js index 73222b288c..8dbc2d5772 100644 --- a/test/addons/buffer-free-callback/test.js +++ b/test/addons/buffer-free-callback/test.js @@ -1,8 +1,8 @@ 'use strict'; // Flags: --expose-gc -require('../../common'); -var binding = require('./build/Release/binding'); +const common = require('../../common'); +const binding = require(`./build/${common.buildType}/binding`); function check(size, alignment, offset) { var buf = binding.alloc(size, alignment, offset); diff --git a/test/addons/heap-profiler/test.js b/test/addons/heap-profiler/test.js index 3fa00e9b86..32b32ddb6e 100644 --- a/test/addons/heap-profiler/test.js +++ b/test/addons/heap-profiler/test.js @@ -1,8 +1,8 @@ 'use strict'; -require('../../common'); +const common = require('../../common'); -const binding = require('./build/Release/binding'); +const binding = require(`./build/${common.buildType}/binding`); // Create an AsyncWrap object. const timer = setTimeout(function() {}, 1); diff --git a/test/addons/hello-world-function-export/test.js b/test/addons/hello-world-function-export/test.js index 6dcdf39ce1..89127fc787 100644 --- a/test/addons/hello-world-function-export/test.js +++ b/test/addons/hello-world-function-export/test.js @@ -1,6 +1,6 @@ 'use strict'; -require('../../common'); +const common = require('../../common'); var assert = require('assert'); -var binding = require('./build/Release/binding'); +const binding = require(`./build/${common.buildType}/binding`); assert.equal('world', binding()); console.log('binding.hello() =', binding()); diff --git a/test/addons/hello-world/test.js b/test/addons/hello-world/test.js index 5637e9e6e9..8d5c123877 100644 --- a/test/addons/hello-world/test.js +++ b/test/addons/hello-world/test.js @@ -1,6 +1,6 @@ 'use strict'; -require('../../common'); +const common = require('../../common'); var assert = require('assert'); -var binding = require('./build/Release/binding'); +const binding = require(`./build/${common.buildType}/binding`); assert.equal('world', binding.hello()); console.log('binding.hello() =', binding.hello()); diff --git a/test/addons/load-long-path/test.js b/test/addons/load-long-path/test.js index 36eb2199e7..2f09f2b3ff 100644 --- a/test/addons/load-long-path/test.js +++ b/test/addons/load-long-path/test.js @@ -21,7 +21,10 @@ for (var i = 0; i < 10; i++) { fs.mkdirSync(addonDestinationDir); } -const addonPath = path.join(__dirname, 'build', 'Release', 'binding.node'); +const addonPath = path.join(__dirname, + 'build', + common.buildType, + 'binding.node'); const addonDestinationPath = path.join(addonDestinationDir, 'binding.node'); // Copy binary to long path destination diff --git a/test/addons/make-callback-recurse/test.js b/test/addons/make-callback-recurse/test.js index 0b7f17dfef..67cc479c5a 100644 --- a/test/addons/make-callback-recurse/test.js +++ b/test/addons/make-callback-recurse/test.js @@ -3,7 +3,7 @@ const common = require('../../common'); const assert = require('assert'); const domain = require('domain'); -const binding = require('./build/Release/binding'); +const binding = require(`./build/${common.buildType}/binding`); const makeCallback = binding.makeCallback; // Make sure this is run in the future. diff --git a/test/addons/make-callback/test.js b/test/addons/make-callback/test.js index f3c98770ef..43ad014c4a 100644 --- a/test/addons/make-callback/test.js +++ b/test/addons/make-callback/test.js @@ -3,7 +3,7 @@ const common = require('../../common'); const assert = require('assert'); const vm = require('vm'); -const binding = require('./build/Release/binding'); +const binding = require(`./build/${common.buildType}/binding`); const makeCallback = binding.makeCallback; assert.strictEqual(42, makeCallback(process, common.mustCall(function() { diff --git a/test/addons/null-buffer-neuter/test.js b/test/addons/null-buffer-neuter/test.js index bca76e27af..3fc335914c 100644 --- a/test/addons/null-buffer-neuter/test.js +++ b/test/addons/null-buffer-neuter/test.js @@ -1,7 +1,7 @@ 'use strict'; // Flags: --expose-gc -require('../../common'); -var binding = require('./build/Release/binding'); +const common = require('../../common'); +const binding = require(`./build/${common.buildType}/binding`); binding.run(); diff --git a/test/addons/openssl-binding/test.js b/test/addons/openssl-binding/test.js index aa515bac9a..a146ffe5c6 100644 --- a/test/addons/openssl-binding/test.js +++ b/test/addons/openssl-binding/test.js @@ -1,8 +1,8 @@ 'use strict'; -require('../../common'); +const common = require('../../common'); const assert = require('assert'); -const binding = require('./build/Release/binding'); +const binding = require(`./build/${common.buildType}/binding`); const bytes = new Uint8Array(1024); assert(binding.randomBytes(bytes)); assert(bytes.reduce((v, a) => v + a) > 0); diff --git a/test/addons/parse-encoding/test.js b/test/addons/parse-encoding/test.js index 6c32374ca6..412346650f 100644 --- a/test/addons/parse-encoding/test.js +++ b/test/addons/parse-encoding/test.js @@ -1,8 +1,8 @@ 'use strict'; -require('../../common'); +const common = require('../../common'); const assert = require('assert'); -const { parseEncoding } = require('./build/Release/binding'); +const { parseEncoding } = require(`./build/${common.buildType}/binding`); assert.strictEqual(parseEncoding(''), 'UNKNOWN'); diff --git a/test/addons/stringbytes-external-exceed-max/test-stringbytes-external-at-max.js b/test/addons/stringbytes-external-exceed-max/test-stringbytes-external-at-max.js index ebf6a01a0a..bd71f05d61 100644 --- a/test/addons/stringbytes-external-exceed-max/test-stringbytes-external-at-max.js +++ b/test/addons/stringbytes-external-exceed-max/test-stringbytes-external-at-max.js @@ -1,7 +1,7 @@ 'use strict'; const common = require('../../common'); -const binding = require('./build/Release/binding'); +const binding = require(`./build/${common.buildType}/binding`); const assert = require('assert'); // v8 fails silently if string length > v8::String::kMaxLength diff --git a/test/addons/stringbytes-external-exceed-max/test-stringbytes-external-exceed-max-by-1-ascii.js b/test/addons/stringbytes-external-exceed-max/test-stringbytes-external-exceed-max-by-1-ascii.js index 0fc21d6102..4be525d79f 100644 --- a/test/addons/stringbytes-external-exceed-max/test-stringbytes-external-exceed-max-by-1-ascii.js +++ b/test/addons/stringbytes-external-exceed-max/test-stringbytes-external-exceed-max-by-1-ascii.js @@ -1,7 +1,7 @@ 'use strict'; const common = require('../../common'); -const binding = require('./build/Release/binding'); +const binding = require(`./build/${common.buildType}/binding`); const assert = require('assert'); const skipMessage = 'intensive toString tests due to memory confinements'; diff --git a/test/addons/stringbytes-external-exceed-max/test-stringbytes-external-exceed-max-by-1-base64.js b/test/addons/stringbytes-external-exceed-max/test-stringbytes-external-exceed-max-by-1-base64.js index 53639a9f17..47426bf635 100644 --- a/test/addons/stringbytes-external-exceed-max/test-stringbytes-external-exceed-max-by-1-base64.js +++ b/test/addons/stringbytes-external-exceed-max/test-stringbytes-external-exceed-max-by-1-base64.js @@ -1,7 +1,7 @@ 'use strict'; const common = require('../../common'); -const binding = require('./build/Release/binding'); +const binding = require(`./build/${common.buildType}/binding`); const assert = require('assert'); const skipMessage = 'intensive toString tests due to memory confinements'; diff --git a/test/addons/stringbytes-external-exceed-max/test-stringbytes-external-exceed-max-by-1-binary.js b/test/addons/stringbytes-external-exceed-max/test-stringbytes-external-exceed-max-by-1-binary.js index 0fa4bca723..c54706fd46 100644 --- a/test/addons/stringbytes-external-exceed-max/test-stringbytes-external-exceed-max-by-1-binary.js +++ b/test/addons/stringbytes-external-exceed-max/test-stringbytes-external-exceed-max-by-1-binary.js @@ -1,7 +1,7 @@ 'use strict'; const common = require('../../common'); -const binding = require('./build/Release/binding'); +const binding = require(`./build/${common.buildType}/binding`); const assert = require('assert'); const skipMessage = 'intensive toString tests due to memory confinements'; diff --git a/test/addons/stringbytes-external-exceed-max/test-stringbytes-external-exceed-max-by-1-hex.js b/test/addons/stringbytes-external-exceed-max/test-stringbytes-external-exceed-max-by-1-hex.js index ccbe723341..ae6966d054 100644 --- a/test/addons/stringbytes-external-exceed-max/test-stringbytes-external-exceed-max-by-1-hex.js +++ b/test/addons/stringbytes-external-exceed-max/test-stringbytes-external-exceed-max-by-1-hex.js @@ -1,7 +1,7 @@ 'use strict'; const common = require('../../common'); -const binding = require('./build/Release/binding'); +const binding = require(`./build/${common.buildType}/binding`); const assert = require('assert'); const skipMessage = 'intensive toString tests due to memory confinements'; diff --git a/test/addons/stringbytes-external-exceed-max/test-stringbytes-external-exceed-max-by-1-utf8.js b/test/addons/stringbytes-external-exceed-max/test-stringbytes-external-exceed-max-by-1-utf8.js index e20e0f5d19..cea175aa93 100644 --- a/test/addons/stringbytes-external-exceed-max/test-stringbytes-external-exceed-max-by-1-utf8.js +++ b/test/addons/stringbytes-external-exceed-max/test-stringbytes-external-exceed-max-by-1-utf8.js @@ -1,7 +1,7 @@ 'use strict'; const common = require('../../common'); -const binding = require('./build/Release/binding'); +const binding = require(`./build/${common.buildType}/binding`); const assert = require('assert'); const skipMessage = 'intensive toString tests due to memory confinements'; diff --git a/test/addons/stringbytes-external-exceed-max/test-stringbytes-external-exceed-max-by-2.js b/test/addons/stringbytes-external-exceed-max/test-stringbytes-external-exceed-max-by-2.js index abe0ac5731..11f23ff1bf 100644 --- a/test/addons/stringbytes-external-exceed-max/test-stringbytes-external-exceed-max-by-2.js +++ b/test/addons/stringbytes-external-exceed-max/test-stringbytes-external-exceed-max-by-2.js @@ -1,7 +1,7 @@ 'use strict'; const common = require('../../common'); -const binding = require('./build/Release/binding'); +const binding = require(`./build/${common.buildType}/binding`); const assert = require('assert'); const skipMessage = 'intensive toString tests due to memory confinements'; diff --git a/test/addons/stringbytes-external-exceed-max/test-stringbytes-external-exceed-max.js b/test/addons/stringbytes-external-exceed-max/test-stringbytes-external-exceed-max.js index 5cc4a49df7..f984179525 100644 --- a/test/addons/stringbytes-external-exceed-max/test-stringbytes-external-exceed-max.js +++ b/test/addons/stringbytes-external-exceed-max/test-stringbytes-external-exceed-max.js @@ -1,7 +1,7 @@ 'use strict'; const common = require('../../common'); -const binding = require('./build/Release/binding'); +const binding = require(`./build/${common.buildType}/binding`); const assert = require('assert'); const skipMessage = 'intensive toString tests due to memory confinements'; diff --git a/test/addons/symlinked-module/test.js b/test/addons/symlinked-module/test.js index 8d3ced56e1..d2025c54e4 100644 --- a/test/addons/symlinked-module/test.js +++ b/test/addons/symlinked-module/test.js @@ -14,7 +14,7 @@ const assert = require('assert'); common.refreshTmpDir(); -const addonPath = path.join(__dirname, 'build', 'Release'); +const addonPath = path.join(__dirname, 'build', common.buildType); const addonLink = path.join(common.tmpDir, 'addon'); try { diff --git a/test/addons/zlib-binding/test.js b/test/addons/zlib-binding/test.js index 1bd014507b..b50817aa5d 100644 --- a/test/addons/zlib-binding/test.js +++ b/test/addons/zlib-binding/test.js @@ -1,9 +1,9 @@ 'use strict'; -require('../../common'); +const common = require('../../common'); const assert = require('assert'); const zlib = require('zlib'); -const binding = require('./build/Release/binding'); +const binding = require(`./build/${common.buildType}/binding`); const input = Buffer.from('Hello, World!'); diff --git a/test/common.js b/test/common.js index 1c36388221..8a5a5f14c1 100644 --- a/test/common.js +++ b/test/common.js @@ -36,6 +36,7 @@ const cpus = os.cpus(); exports.enoughTestCpu = cpus.length > 1 || cpus[0].speed > 999; exports.rootDir = exports.isWindows ? 'c:\\' : '/'; +exports.buildType = process.config.target_defaults.default_configuration; function rimrafSync(p) { try { diff --git a/tools/doc/addon-verify.js b/tools/doc/addon-verify.js index 299d4847ef..86a8193589 100644 --- a/tools/doc/addon-verify.js +++ b/tools/doc/addon-verify.js @@ -65,8 +65,8 @@ function verifyFiles(files, blockName, onprogress, ondone) { files = Object.keys(files).map(function(name) { if (name === 'test.js') { files[name] = `'use strict'; -require('../../common'); -${files[name]} +const common = require('../../common'); +${files[name].replace('Release', "' + common.buildType + '")} `; } return { |