Flip Promise
A package to flip the returned promise.
Install
Via npm package manager
npm install --save flip-promise
#or with yarn
yarn add flip-promise
Usage
There is only one function from default import
import flipPromise from 'flip-promise'
// or
const flipPromise = require('flip-promise')
flipPromise
takes one argument, return a new promise that will be resolved with error rejected by input promise, or be rejected with resolved result from input promise or the input argument value itself unless the input argument is a promise.
Usage example:
import flipPromise from 'flip-promise'
flipPromise(Promise.reject(1)).then(console.log) // print 1
flipPromise(flipPromise(2)).then(console.log) // print 2
flipPromise(3).catch(console.log) // print 3
flipPromise(Promise.resolve(4)).catch(console.log) // print 4
This is useful when writing test to make sure a promise being rejected.
Another example:
const myPromise = Promise.reject(true)
expect(await flipPromise(myPromise)).to.be.true