forked from sashin/sashinexists
110 lines
2.1 KiB
JavaScript
110 lines
2.1 KiB
JavaScript
|
|
/* IMPORT */
|
|
|
|
import {describe} from 'fava';
|
|
import makeNakedPromise from '../dist/index.js';
|
|
|
|
/* MAIN */
|
|
|
|
describe ( 'makeNakedPromise', it => {
|
|
|
|
it ( 'returns a function which can be resolved from the outside', t => {
|
|
|
|
const {promise, resolve} = makeNakedPromise ();
|
|
|
|
promise.then ( t.pass );
|
|
|
|
resolve ();
|
|
|
|
});
|
|
|
|
it ( 'returns a function which can be rejected from the outside', t => {
|
|
|
|
const {promise, reject} = makeNakedPromise ();
|
|
|
|
promise.catch ( t.pass );
|
|
|
|
reject ();
|
|
|
|
});
|
|
|
|
it ( 'returns a function which can be used to check if the promise is pending, resolve branch', t => {
|
|
|
|
const {resolve, isPending} = makeNakedPromise ();
|
|
|
|
t.true ( isPending () );
|
|
|
|
resolve ();
|
|
|
|
t.false ( isPending () );
|
|
|
|
});
|
|
|
|
it ( 'returns a function which can be used to check if the promise is pending, reject branch', t => {
|
|
|
|
const {promise, reject, isPending} = makeNakedPromise ();
|
|
|
|
promise.catch ( () => {} );
|
|
|
|
t.true ( isPending () );
|
|
|
|
reject ();
|
|
|
|
t.false ( isPending () );
|
|
|
|
});
|
|
|
|
it ( 'returns a function which can be used to check if the promise is resolved, resolve branch', t => {
|
|
|
|
const {resolve, isResolved} = makeNakedPromise ();
|
|
|
|
t.false ( isResolved () );
|
|
|
|
resolve ();
|
|
|
|
t.true ( isResolved () );
|
|
|
|
});
|
|
|
|
it ( 'returns a function which can be used to check if the promise is resolved, reject branch', t => {
|
|
|
|
const {promise, reject, isResolved} = makeNakedPromise ();
|
|
|
|
promise.catch ( () => {} );
|
|
|
|
t.false ( isResolved () );
|
|
|
|
reject ();
|
|
|
|
t.false ( isResolved () );
|
|
|
|
});
|
|
|
|
it ( 'returns a function which can be used to check if the promise is rejected, resolve branch', t => {
|
|
|
|
const {resolve, isRejected} = makeNakedPromise ();
|
|
|
|
t.false ( isRejected () );
|
|
|
|
resolve ();
|
|
|
|
t.false ( isRejected () );
|
|
|
|
});
|
|
|
|
it ( 'returns a function which can be used to check if the promise is rejected, reject branch', t => {
|
|
|
|
const {promise, reject, isRejected} = makeNakedPromise ();
|
|
|
|
promise.catch ( () => {} );
|
|
|
|
t.false ( isRejected () );
|
|
|
|
reject ();
|
|
|
|
t.true ( isRejected () );
|
|
|
|
});
|
|
|
|
});
|