assert: validate required arguments · nodejs/node@5a3623a (original) (raw)

`@@ -25,7 +25,8 @@ const { codes: {

`

25

25

`ERR_AMBIGUOUS_ARGUMENT,

`

26

26

`ERR_INVALID_ARG_TYPE,

`

27

27

`ERR_INVALID_ARG_VALUE,

`

28

``

`-

ERR_INVALID_RETURN_VALUE

`

``

28

`+

ERR_INVALID_RETURN_VALUE,

`

``

29

`+

ERR_MISSING_ARGS

`

29

30

`} } = require('internal/errors');

`

30

31

`const AssertionError = require('internal/assert/assertion_error');

`

31

32

`const { openSync, closeSync, readSync } = require('fs');

`

`@@ -351,6 +352,9 @@ assert.ok = ok;

`

351

352

`// The equality assertion tests shallow, coercive equality with ==.

`

352

353

`/* eslint-disable no-restricted-properties */

`

353

354

`assert.equal = function equal(actual, expected, message) {

`

``

355

`+

if (arguments.length < 2) {

`

``

356

`+

throw new ERR_MISSING_ARGS('actual', 'expected');

`

``

357

`+

}

`

354

358

`// eslint-disable-next-line eqeqeq

`

355

359

`if (actual != expected) {

`

356

360

`innerFail({

`

`@@ -366,6 +370,9 @@ assert.equal = function equal(actual, expected, message) {

`

366

370

`// The non-equality assertion tests for whether two objects are not

`

367

371

`// equal with !=.

`

368

372

`assert.notEqual = function notEqual(actual, expected, message) {

`

``

373

`+

if (arguments.length < 2) {

`

``

374

`+

throw new ERR_MISSING_ARGS('actual', 'expected');

`

``

375

`+

}

`

369

376

`// eslint-disable-next-line eqeqeq

`

370

377

`if (actual == expected) {

`

371

378

`innerFail({

`

`@@ -380,6 +387,9 @@ assert.notEqual = function notEqual(actual, expected, message) {

`

380

387

``

381

388

`// The equivalence assertion tests a deep equality relation.

`

382

389

`assert.deepEqual = function deepEqual(actual, expected, message) {

`

``

390

`+

if (arguments.length < 2) {

`

``

391

`+

throw new ERR_MISSING_ARGS('actual', 'expected');

`

``

392

`+

}

`

383

393

`if (isDeepEqual === undefined) lazyLoadComparison();

`

384

394

`if (!isDeepEqual(actual, expected)) {

`

385

395

`innerFail({

`

`@@ -394,6 +404,9 @@ assert.deepEqual = function deepEqual(actual, expected, message) {

`

394

404

``

395

405

`// The non-equivalence assertion tests for any deep inequality.

`

396

406

`assert.notDeepEqual = function notDeepEqual(actual, expected, message) {

`

``

407

`+

if (arguments.length < 2) {

`

``

408

`+

throw new ERR_MISSING_ARGS('actual', 'expected');

`

``

409

`+

}

`

397

410

`if (isDeepEqual === undefined) lazyLoadComparison();

`

398

411

`if (isDeepEqual(actual, expected)) {

`

399

412

`innerFail({

`

`@@ -408,6 +421,9 @@ assert.notDeepEqual = function notDeepEqual(actual, expected, message) {

`

408

421

`/* eslint-enable */

`

409

422

``

410

423

`assert.deepStrictEqual = function deepStrictEqual(actual, expected, message) {

`

``

424

`+

if (arguments.length < 2) {

`

``

425

`+

throw new ERR_MISSING_ARGS('actual', 'expected');

`

``

426

`+

}

`

411

427

`if (isDeepEqual === undefined) lazyLoadComparison();

`

412

428

`if (!isDeepStrictEqual(actual, expected)) {

`

413

429

`innerFail({

`

`@@ -422,6 +438,9 @@ assert.deepStrictEqual = function deepStrictEqual(actual, expected, message) {

`

422

438

``

423

439

`assert.notDeepStrictEqual = notDeepStrictEqual;

`

424

440

`function notDeepStrictEqual(actual, expected, message) {

`

``

441

`+

if (arguments.length < 2) {

`

``

442

`+

throw new ERR_MISSING_ARGS('actual', 'expected');

`

``

443

`+

}

`

425

444

`if (isDeepEqual === undefined) lazyLoadComparison();

`

426

445

`if (isDeepStrictEqual(actual, expected)) {

`

427

446

`innerFail({

`

`@@ -435,6 +454,9 @@ function notDeepStrictEqual(actual, expected, message) {

`

435

454

`}

`

436

455

``

437

456

`assert.strictEqual = function strictEqual(actual, expected, message) {

`

``

457

`+

if (arguments.length < 2) {

`

``

458

`+

throw new ERR_MISSING_ARGS('actual', 'expected');

`

``

459

`+

}

`

438

460

`if (!Object.is(actual, expected)) {

`

439

461

`innerFail({

`

440

462

` actual,

`

`@@ -447,6 +469,9 @@ assert.strictEqual = function strictEqual(actual, expected, message) {

`

447

469

`};

`

448

470

``

449

471

`assert.notStrictEqual = function notStrictEqual(actual, expected, message) {

`

``

472

`+

if (arguments.length < 2) {

`

``

473

`+

throw new ERR_MISSING_ARGS('actual', 'expected');

`

``

474

`+

}

`

450

475

`if (Object.is(actual, expected)) {

`

451

476

`innerFail({

`

452

477

` actual,

`