[Pkg-javascript-commits] [node-tap] 23/186: resolve/resolveMatch/rejects should return promises

Bastien Roucariès rouca at moszumanska.debian.org
Fri Dec 1 16:40:40 UTC 2017


This is an automated email from the git hooks/post-receive script.

rouca pushed a commit to branch master
in repository node-tap.

commit 54245862fb0d321c827a2f633b4e8d27fcf90dff
Author: isaacs <i at izs.me>
Date:   Tue Sep 5 21:14:05 2017 -0700

    resolve/resolveMatch/rejects should return promises
---
 lib/test.js | 46 ++++++++++++++++++++++------------------------
 1 file changed, 22 insertions(+), 24 deletions(-)

diff --git a/lib/test.js b/lib/test.js
index fbd75dd..6159da0 100644
--- a/lib/test.js
+++ b/lib/test.js
@@ -1192,37 +1192,35 @@ class Test extends Base {
     if (!promise && typeof fn !== 'function') {
       extra = extra || {}
       extra.todo = true
-      return this.pass(message, extra)
+      return Promise.resolve(this.pass(message, extra))
     }
 
     if (!promise)
       promise = fn()
 
     if (!promise || typeof promise.then !== 'function')
-      return this.fail(message, extra)
+      return Promise.resolve(this.fail(message, extra))
 
     // have to do as a subtest, because promises are async
     extra.at = stack.at(this.currentAssert)
-    this.test(message, { buffered: true }, t => {
-      return promise.then(value => {
-        extra.found = value
-        t.fail(message, extra)
-      }, er => {
-        // 'name' is a getter.
-        if (er.name) {
-          er.name = er.name + ''
-        }
+    return this.test(message, { buffered: true }, t => promise.then(value => {
+      extra.found = value
+      t.fail(message, extra)
+    }, er => {
+      // 'name' is a getter.
+      if (er.name) {
+        er.name = er.name + ''
+      }
 
-        if (wanted) {
-          if (Object.prototype.toString.call(wanted) === '[object RegExp]') {
-            return t.match(er.message, wanted, message, extra)
-          }
-          return t.match(er, wanted, message, extra)
-        } else {
-          return t.pass(message, extra)
+      if (wanted) {
+        if (Object.prototype.toString.call(wanted) === '[object RegExp]') {
+          return t.match(er.message, wanted, message, extra)
         }
-      })
-    })
+        return t.match(er, wanted, message, extra)
+      } else {
+        return t.pass(message, extra)
+      }
+    }))
   }
 
   resolves (promise, message, extra) {
@@ -1239,11 +1237,11 @@ class Test extends Base {
       message = 'expect resolving Promise'
 
     if (!promise || typeof promise.then !== 'function')
-      return this.fail(message, extra)
+      return Promise.resolve(this.fail(message, extra))
 
     // have to do as a subtest, because promises are async
     extra.at = stack.at(this.currentAssert)
-    this.test(message, { buffered: true }, t =>
+    return this.test(message, { buffered: true }, t =>
       promise.then(value => {
         extra.found = value
         t.pass(message, extra)
@@ -1264,11 +1262,11 @@ class Test extends Base {
       message = 'expect resolving Promise'
 
     if (!promise || typeof promise.then !== 'function')
-      return this.fail(message, extra)
+      return Promise.resolve(this.fail(message, extra))
 
     // have to do as a subtest, because promises are async
     extra.at = stack.at(this.currentAssert)
-    this.test(message, { buffered: true }, t =>
+    return this.test(message, { buffered: true }, t =>
       promise.then(value => {
         extra.found = value
         t.match(value, wanted, extra)

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-javascript/node-tap.git



More information about the Pkg-javascript-commits mailing list