Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

eslint-plugin-should-promised

Package Overview
Dependencies
Maintainers
1
Versions
10
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

eslint-plugin-should-promised

Eslint rule for checking that should-promised assertions return

  • 1.0.7
  • Source
  • npm
  • Socket score

Version published
Maintainers
1
Created
Source

NPM Version Build Status Coverage Status Peer Dependencies

eslint-plugin-should-promised

Eslint rule for checking that should-promised assertions return

Install

$ npm i -D eslint-plugin-should-promised

Configure

{
  "plugins": [
    "should-promised"
  ],
  "rules": {
    "should-promised/return-promise": 2
  }
}

Rules

Require promise assertions to return or await (return-promise)

This rule is intended to be used with the should assertion library.

When testing an async function by returning a promise to mocha it is important to remember to actually return the promise. Forgetting to return will cause the test case to pass even if the promise is eventually rejected.

This rule will point out when a should assertion is made without returning.

Rule Details

This rule looks for any of the properties Promise, fulfilled, fulfilledWith, rejected, rejectedWith, finally and eventually.

The following patterns are considered warnings:

describe('forgetting to return the promise', () => {

  it('should report when not returning the promise from should.be.fulfilled', () => {
    promiseFn().should.be.fulfilled();
  });

  it('should report when not returning the promise from should.eventually', () => {
    promiseFn().should.eventually.eql(1);
  });

});

These patterns would not be considered warnings:

describe('returning the promise', () => {

  it('should not report when returning the promise from should.be.fulfilled', () => {
    return promiseFn().should.be.fulfilled();
  });

  it('should allow implicit return in a single expression arrow function', () =>
    promiseFn().should.be.fulfilled());

  it('should not report when using async/await', async () => {
    await promiseFn().should.eventually.eql(expected_value);
  });

  it('should not report when using a generator function', function * () {
    yield generatorFn().should.eventually.eql(expected_value);
  });

});
Further Reading
  • The should assertion library

Keywords

FAQs

Package last updated on 01 Feb 2016

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc