A package to flip the returned promise.
Via npm package manager
npm install --save flip-promise
#or with yarn
yarn add flip-promise
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.
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