NodeJS assert does not throw passed error

Viewed 156

I have just started using NodeJS's assert Module, and, given that I have understood it correctly, I can pass a custom error instance that should be thrown instead of an AssertionError if the assertion fails.

I.e., the first line in the following code throws an AssertionError and the second line throws an Error:

const assert = require('assert');

assert(false);
assert(false, new Error('abc'));

However, on my system, this does not seem to work. I have the following code:

try {
    assert(false, new Error('abc'));
} catch (error) {
    console.log(error.constructor.name);
}

and the Output I get is 'AssertionError'. Interestingly, when I try to do the same thing using the REPL, the output is the expected 'Error'.

I use NodeJS v15.8.0 in an alpine Docker container.

0 Answers
Related