mirror of
https://github.com/nodejs/node.git
synced 2025-05-03 02:06:12 +00:00

covert lib/fs.js over to using lib/internal/errors.js i have not addressed the cases that use errnoException(), for reasons described in GH-12926 - throw the ERR_INVALID_CALLBACK error when the the callback is invalid - replace the ['object', 'string'] with ['string', 'object'] in the error constructor call, to better match the previous err msg in the getOptions() function - add error ERR_VALUE_OUT_OF_RANGE in lib/internal/errors.js, this error is thrown when a numeric value is out of range - document the ERR_VALUE_OUT_OF_RANGE err in errors.md - correct the expected args, in the error thrown in the function fs._toUnixTimestamp() to ['Date', 'time in seconds'] (lib/fs.js) - update the listener error type in the fs.watchFile() function, from Error to TypeError (lib/fs.js) - update errors from ERR_INVALID_OPT_VALUE to ERR_INVALID_ARG_TYPE in the functions fs.ReadStream() and fs.WriteStream(), for the cases of range errors use the new error: ERR_VALUE_OUT_OF_RANGE (lib/fs.js) PR-URL: https://github.com/nodejs/node/pull/15043 Refs: https://github.com/nodejs/node/issues/11273 Reviewed-By: Refael Ackermann <refack@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Michael Dawson <michael_dawson@ca.ibm.com>
34 lines
915 B
JavaScript
34 lines
915 B
JavaScript
'use strict';
|
|
const common = require('../common');
|
|
const assert = require('assert');
|
|
const fs = require('fs');
|
|
const callbackThrowValues = [null, true, false, 0, 1, 'foo', /foo/, [], {}];
|
|
|
|
const { sep } = require('path');
|
|
const warn = 'Calling an asynchronous function without callback is deprecated.';
|
|
|
|
common.refreshTmpDir();
|
|
|
|
function testMakeCallback(cb) {
|
|
return function() {
|
|
// fs.mkdtemp() calls makeCallback() on its third argument
|
|
fs.mkdtemp(`${common.tmpDir}${sep}`, {}, cb);
|
|
};
|
|
}
|
|
|
|
common.expectWarning('DeprecationWarning', warn);
|
|
|
|
// Passing undefined/nothing calls rethrow() internally, which emits a warning
|
|
assert.doesNotThrow(testMakeCallback());
|
|
|
|
function invalidCallbackThrowsTests() {
|
|
callbackThrowValues.forEach((value) => {
|
|
common.expectsError(testMakeCallback(value), {
|
|
code: 'ERR_INVALID_CALLBACK',
|
|
type: TypeError
|
|
});
|
|
});
|
|
}
|
|
|
|
invalidCallbackThrowsTests();
|