| 
 | 1 | +// Copyright Joyent, Inc. and other Node contributors.  | 
 | 2 | +//  | 
 | 3 | +// Permission is hereby granted, free of charge, to any person obtaining a  | 
 | 4 | +// copy of this software and associated documentation files (the  | 
 | 5 | +// "Software"), to deal in the Software without restriction, including  | 
 | 6 | +// without limitation the rights to use, copy, modify, merge, publish,  | 
 | 7 | +// distribute, sublicense, and/or sell copies of the Software, and to permit  | 
 | 8 | +// persons to whom the Software is furnished to do so, subject to the  | 
 | 9 | +// following conditions:  | 
 | 10 | +//  | 
 | 11 | +// The above copyright notice and this permission notice shall be included  | 
 | 12 | +// in all copies or substantial portions of the Software.  | 
 | 13 | +//  | 
 | 14 | +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS  | 
 | 15 | +// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF  | 
 | 16 | +// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN  | 
 | 17 | +// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,  | 
 | 18 | +// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR  | 
 | 19 | +// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE  | 
 | 20 | +// USE OR OTHER DEALINGS IN THE SOFTWARE.  | 
 | 21 | + | 
 | 22 | +/*  | 
 | 23 | + * This test is a regression test for joyent/node#8900.  | 
 | 24 | + */  | 
 | 25 | +var assert = require('assert');  | 
 | 26 | + | 
 | 27 | +var N = 5;  | 
 | 28 | +var nbIntervalFired = 0;  | 
 | 29 | +var timer = setInterval(function() {  | 
 | 30 | +  ++nbIntervalFired;  | 
 | 31 | +  if (nbIntervalFired === N)  | 
 | 32 | +    clearInterval(timer);  | 
 | 33 | +}, 1);  | 
 | 34 | + | 
 | 35 | +timer.unref();  | 
 | 36 | + | 
 | 37 | +setTimeout(function onTimeout() {  | 
 | 38 | +  assert.strictEqual(nbIntervalFired, N);  | 
 | 39 | +}, 100);  | 
0 commit comments