1'use strict'; 2const common = require('../common'); 3const assert = require('assert'); 4const fs = require('fs'); 5const callbackThrowValues = [null, true, false, 0, 1, 'foo', /foo/, [], {}]; 6 7function testMakeStatsCallback(cb) { 8 return function() { 9 // fs.stat() calls makeStatsCallback() on its second argument 10 fs.stat(__filename, cb); 11 }; 12} 13 14// Verify the case where a callback function is provided 15testMakeStatsCallback(common.mustCall())(); 16 17function invalidCallbackThrowsTests() { 18 callbackThrowValues.forEach((value) => { 19 assert.throws(testMakeStatsCallback(value), { 20 code: 'ERR_INVALID_CALLBACK', 21 name: 'TypeError' 22 }); 23 }); 24} 25 26invalidCallbackThrowsTests(); 27