JSPM

tslint-no-unused-expression-chai

0.1.4
  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 11557
  • Score
    100M100P100Q159588F
  • License MIT

Custom tslint no-unused-expression rule supports chai's expect assertion

Package Exports

  • tslint-no-unused-expression-chai

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (tslint-no-unused-expression-chai) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

Build Status npm

tslint-no-unused-expression-chai

From tslint 5, lint applies no-unused-expression more strictly. This affects test assertion written via chai, as its expect assertion is form of expression caught by lint. tslint-no-unused-expression-chai provides drop-in replacement of rule no-unused-expression to loosen lint checker for chai's assertion.

This module supports chai's expect based assertion (i.e expect(x).to.be....). When adding "should" to the rule configuration, it also supports those assertios. Other type of property based assertion still may not work.

Install

This has a peer dependencies of tslint@5.*.* and implicit dependency of typescript, which will have to be installed as well

npm install --save-dev tslint-no-unused-expression-chai

Usage

You can configure tslint rules by replacing existing no-unused-expression rule.

"rules": {
  //accepts all options of https://palantir.github.io/tslint/rules/no-unused-expression/
  "no-unused-expression-chai": true
  ...
},
"rulesDirectory": [
  "tslint-no-unused-expression-chai"
  ...
]

Alternatively you can just extend the configuration preset provided by this package. It disables no-unused-expression and enables no-unused-expression-chai.

"extends": [
  ...
  "tslint-no-unused-expression-chai"
]

Building / Testing

Few npm scripts are supported for build / test code. As this rule is simple override to default rules, it doesn't have own unit test coverage but borrows test fixture from original rule.

  • build: Transpiles code to ES5 commonjs to rules.
  • test: Run tests.
  • lint: Run lint over all codebases
  • lint:staged: Run lint only for staged changes. This'll be executed automatically with precommit hook.
  • commit: Commit wizard to write commit message