Nervously Proposing Marriage
Learn about our RFC process, Open RFC meetings & more.Join in the discussion! »

wait-until-promise

1.0.0 • Public • Published

wait-until-promise

Test utility to simplify waiting for a condition

NPM Version Linux build Status Windows Build Status Coverage Status Codeclimate Status

Dependency Status Dev Dependency Status

Usage

To use it, import the module, and pass it a function. A promise is returned, and it is resolved after the passed function returns a truthy value. If the function passed never returns a truthy value, or it times out, the promise is rejected.

import $ from 'jquery';
import waitUntil from 'wait-until-promise';
 
describe('some thing', () => {
  it('should do something', (done) => {
    const button = $('#button');
    const paragraph = $('p');
 
    button.click();
 
    waitUntil(() => paragraph.text() === 'button clicked')
      .then(() => done());
  })
 
  // The promise is resolved with the return-value. Useful to if you want to
  // wait until something exists, then make assertions on it
  it('should do something else', (done) => {
    const button = $('#button');
    const paragraph = $('p');
 
    button.click();
 
    waitUntil(() => paragraph.text())
      .then((text) => expect(test).toBe('The text in the paragraph'));
  })
})

API

See API.md

Change log

See CHANGELOG.md

Install

npm i wait-until-promise

DownloadsWeekly Downloads

631

Version

1.0.0

License

MIT

Last publish

Collaborators

  • avatar