Skip to content

Commit 7d2410a

Browse files
sjanuaryhhellyer
authored andcommitted
Fix environent tests for heap size calculation change in V8 5.1 (Node 6.5.0) (#285)
* fix environment tests for heap size calculation change in v8 5.1 * added more detail to TAP output for environment tests
1 parent 8e9f76d commit 7d2410a

File tree

1 file changed

+11
-5
lines changed

1 file changed

+11
-5
lines changed

tests/api_tests.js

Lines changed: 11 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -311,25 +311,31 @@ function runNodeEnvTests(nodeEnvData, t) {
311311
// NOTE(ignasbol): max.heap.size included as well as part of 1.0.4
312312
if (nodeEnvData['heap.size.limit']) {
313313
t.ok(isInteger(nodeEnvData['heap.size.limit']),
314-
"heap.size.limit is an integer");
314+
"heap.size.limit is an integer (value was: " + nodeEnvData['heap.size.limit'] + ")");
315315

316316
t.ok(parseInt(nodeEnvData['heap.size.limit']) > 0,
317317
'heap.size.limit is positive');
318318
t.ok(isInteger(nodeEnvData['max.semi.space.size']),
319-
"max.semi.space.size is an integer");
319+
"max.semi.space.size is an integer (value was: " + nodeEnvData['max.semi.space.size'] + ")");
320320
t.ok(parseInt(nodeEnvData['max.semi.space.size']) > 0,
321321
"max.semi.size is positive");
322322

323323
t.ok(isInteger(nodeEnvData['max.old.space.size']),
324-
"max.old.space.size is an integer");
324+
"max.old.space.size is an integer (value was: " + nodeEnvData['max.old.space.size'] + ")");
325325
t.ok(parseInt(nodeEnvData['max.old.space.size']) > 0,
326326
"max.old.space.size is positive");
327327

328-
t.ok(4*parseInt(nodeEnvData['max.semi.space.size']) + parseInt(nodeEnvData['max.old.space.size']) === parseInt(nodeEnvData['heap.size.limit']),
328+
var nodeVersion = Number(process.version.match(/^v(\d+\.\d+)/)[1]);
329+
if(nodeVersion >= 6.5) { // issue 283
330+
t.ok(2*parseInt(nodeEnvData['max.semi.space.size']) + parseInt(nodeEnvData['max.old.space.size']) === parseInt(nodeEnvData['heap.size.limit']),
329331
'Values for max.old.space.size and max.semi.space.size match heap.size.limit');
332+
} else {
333+
t.ok(4*parseInt(nodeEnvData['max.semi.space.size']) + parseInt(nodeEnvData['max.old.space.size']) === parseInt(nodeEnvData['heap.size.limit']),
334+
'Values for max.old.space.size and max.semi.space.size match heap.size.limit');
335+
}
330336

331337
t.ok(isInteger(nodeEnvData['max.heap.size']),
332-
"max.heap.size is an integer");
338+
"max.heap.size is an integer (value was: " + nodeEnvData['max.heap.size'] + ")");
333339

334340
t.ok(parseInt(nodeEnvData['max.heap.size']) > 0,
335341
"max.heap.size is positive");

0 commit comments

Comments
 (0)