test: refactor addons-napi/test_promise/test.js

* remove custom messages for assert that conceal values
* add comment explaining test
* add block scoping

PR-URL: https://github.com/nodejs/node/pull/16814
Reviewed-By: Rich Trott <rtrott@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
This commit is contained in:
ka3e 2017-11-06 15:14:51 +00:00 committed by Rich Trott
parent b204b09dae
commit 51f92b6fff

View File

@ -1,8 +1,11 @@
'use strict';
const common = require('../../common');
const test_promise = require(`./build/${common.buildType}/test_promise`);
// This tests the promise-related n-api calls
const assert = require('assert');
const test_promise = require(`./build/${common.buildType}/test_promise`);
// A resolution
{
@ -10,8 +13,7 @@ const assert = require('assert');
const promise = test_promise.createPromise();
promise.then(
common.mustCall(function(result) {
assert.strictEqual(result, expected_result,
`promise resolved as expected, received ${result}`);
assert.strictEqual(result, expected_result);
}),
common.mustNotCall());
test_promise.concludeCurrentPromise(expected_result, true);
@ -24,23 +26,24 @@ const assert = require('assert');
promise.then(
common.mustNotCall(),
common.mustCall(function(result) {
assert.strictEqual(result, expected_result,
`promise rejected as expected, received ${result}`);
assert.strictEqual(result, expected_result);
}));
test_promise.concludeCurrentPromise(expected_result, false);
}
// Chaining
const promise = test_promise.createPromise();
promise.then(
common.mustCall(function(result) {
assert.strictEqual(result, 'chained answer',
'resolving with a promise chains properly');
}),
common.mustNotCall());
test_promise.concludeCurrentPromise(Promise.resolve('chained answer'), true);
{
const expected_result = 'chained answer';
const promise = test_promise.createPromise();
promise.then(
common.mustCall(function(result) {
assert.strictEqual(result, expected_result);
}),
common.mustNotCall());
test_promise.concludeCurrentPromise(Promise.resolve('chained answer'), true);
}
assert.strictEqual(test_promise.isPromise(promise), true);
assert.strictEqual(test_promise.isPromise(test_promise.createPromise()), true);
assert.strictEqual(test_promise.isPromise(Promise.reject(-1)), true);
assert.strictEqual(test_promise.isPromise(2.4), false);
assert.strictEqual(test_promise.isPromise('I promise!'), false);