From 1c2910d94c4f01d3dc929ed3fb3f0823dd6c256b Mon Sep 17 00:00:00 2001 From: isaacs Date: Wed, 26 Dec 2012 18:13:59 -0800 Subject: [PATCH] test-message: Add setTimeout and nextTick message tests --- test/message/nexttick_throw.js | 33 +++++++++++++++++++++++++++++++++ test/message/nexttick_throw.out | 6 ++++++ test/message/timeout_throw.js | 27 +++++++++++++++++++++++++++ test/message/timeout_throw.out | 7 +++++++ 4 files changed, 73 insertions(+) create mode 100644 test/message/nexttick_throw.js create mode 100644 test/message/nexttick_throw.out create mode 100644 test/message/timeout_throw.js create mode 100644 test/message/timeout_throw.out diff --git a/test/message/nexttick_throw.js b/test/message/nexttick_throw.js new file mode 100644 index 00000000000..14b2990debf --- /dev/null +++ b/test/message/nexttick_throw.js @@ -0,0 +1,33 @@ +// Copyright Joyent, Inc. and other Node contributors. +// +// Permission is hereby granted, free of charge, to any person obtaining a +// copy of this software and associated documentation files (the +// "Software"), to deal in the Software without restriction, including +// without limitation the rights to use, copy, modify, merge, publish, +// distribute, sublicense, and/or sell copies of the Software, and to permit +// persons to whom the Software is furnished to do so, subject to the +// following conditions: +// +// The above copyright notice and this permission notice shall be included +// in all copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS +// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN +// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, +// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR +// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE +// USE OR OTHER DEALINGS IN THE SOFTWARE. + +var common = require('../common'); +var assert = require('assert'); + +process.nextTick(function() { + process.nextTick(function() { + process.nextTick(function() { + process.nextTick(function() { + undefined_reference_error_maker; + }); + }); + }); +}); diff --git a/test/message/nexttick_throw.out b/test/message/nexttick_throw.out new file mode 100644 index 00000000000..653eaab7e9a --- /dev/null +++ b/test/message/nexttick_throw.out @@ -0,0 +1,6 @@ +*test*message*nexttick_throw.js:* + undefined_reference_error_maker; + ^ +ReferenceError: undefined_reference_error_maker is not defined + at *test*message*nexttick_throw.js:*:* + at process._tickCallback (node.js:*:*) diff --git a/test/message/timeout_throw.js b/test/message/timeout_throw.js new file mode 100644 index 00000000000..6704ee4dac6 --- /dev/null +++ b/test/message/timeout_throw.js @@ -0,0 +1,27 @@ +// Copyright Joyent, Inc. and other Node contributors. +// +// Permission is hereby granted, free of charge, to any person obtaining a +// copy of this software and associated documentation files (the +// "Software"), to deal in the Software without restriction, including +// without limitation the rights to use, copy, modify, merge, publish, +// distribute, sublicense, and/or sell copies of the Software, and to permit +// persons to whom the Software is furnished to do so, subject to the +// following conditions: +// +// The above copyright notice and this permission notice shall be included +// in all copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS +// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN +// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, +// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR +// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE +// USE OR OTHER DEALINGS IN THE SOFTWARE. + +var common = require('../common'); +var assert = require('assert'); + +setTimeout(function() { + undefined_reference_error_maker; +}); diff --git a/test/message/timeout_throw.out b/test/message/timeout_throw.out new file mode 100644 index 00000000000..44659b9a195 --- /dev/null +++ b/test/message/timeout_throw.out @@ -0,0 +1,7 @@ +*test*message*timeout_throw.js:* + undefined_reference_error_maker; + ^ +ReferenceError: undefined_reference_error_maker is not defined + at null._onTimeout (*test*message*timeout_throw.js:*:*) + at Timer.list.ontimeout (timers.js:*:*) + at process._makeCallback (node.js:*:*)