Skip to content

Commit

Permalink
process: deprecate process.assert()
Browse files Browse the repository at this point in the history
This was never documented and the `assert` module should be used
instead.

PR-URL: nodejs#18666
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Anatoli Papirovski <apapirovski@mac.com>
Reviewed-By: Сковорода Никита Андреевич <chalkerx@gmail.com>
Reviewed-By: Jeremiah Senkpiel <fishrock123@rocketmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
  • Loading branch information
BridgeAR authored and MayaLekova committed May 8, 2018
1 parent dcddf25 commit 8a999a9
Show file tree
Hide file tree
Showing 3 changed files with 27 additions and 9 deletions.
10 changes: 10 additions & 0 deletions doc/api/deprecations.md
Original file line number Diff line number Diff line change
Expand Up @@ -902,11 +902,21 @@ Certain versions of `node::MakeCallback` APIs available to native modules are
deprecated. Please use the versions of the API that accept an `async_context`
parameter.
<a id="DEP0100"></a>
### DEP0100: process.assert()
Type: Runtime
`process.assert()` is deprecated. Please use the [`assert`][] module instead.
This was never a documented feature.
[`--pending-deprecation`]: cli.html#cli_pending_deprecation
[`Buffer.allocUnsafeSlow(size)`]: buffer.html#buffer_class_method_buffer_allocunsafeslow_size
[`Buffer.from(array)`]: buffer.html#buffer_class_method_buffer_from_array
[`Buffer.from(buffer)`]: buffer.html#buffer_class_method_buffer_from_buffer
[`Buffer.isBuffer()`]: buffer.html#buffer_class_method_buffer_isbuffer_obj
[`assert`]: assert.html
[`clearInterval()`]: timers.html#timers_clearinterval_timeout
[`clearTimeout()`]: timers.html#timers_cleartimeout_timeout
[`EventEmitter.listenerCount(emitter, eventName)`]: events.html#events_eventemitter_listenercount_emitter_eventname
Expand Down
14 changes: 9 additions & 5 deletions lib/internal/process.js
Original file line number Diff line number Diff line change
Expand Up @@ -3,11 +3,15 @@
const errors = require('internal/errors');
const util = require('util');
const constants = process.binding('constants').os.signals;

const assert = process.assert = function(x, msg) {
if (!x) throw new errors.Error('ERR_ASSERTION', msg || 'assertion error');
};

const assert = require('assert').strict;
const { deprecate } = require('internal/util');

process.assert = deprecate(
function(x, msg) {
if (!x) throw new errors.Error('ERR_ASSERTION', msg || 'assertion error');
},
'process.assert() is deprecated. Please use the `assert` module instead.',
'DEP0100');

function setup_performance() {
require('perf_hooks');
Expand Down
12 changes: 8 additions & 4 deletions test/parallel/test-process-assert.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,20 +2,24 @@
const common = require('../common');
const assert = require('assert');

common.expectWarning(
'DeprecationWarning',
'process.assert() is deprecated. Please use the `assert` module instead.',
'DEP0100'
);

assert.strictEqual(process.assert(1, 'error'), undefined);
common.expectsError(() => {
process.assert(undefined, 'errorMessage');
}, {
code: 'ERR_ASSERTION',
type: Error,
message: 'errorMessage'
}
);
});
common.expectsError(() => {
process.assert(false);
}, {
code: 'ERR_ASSERTION',
type: Error,
message: 'assertion error'
}
);
});

0 comments on commit 8a999a9

Please sign in to comment.