• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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