All Projects → kwonoj → Tslint No Unused Expression Chai

kwonoj / Tslint No Unused Expression Chai

Licence: mit
Chai assertion compatible tslint no-unused-expression rule

Programming Languages

typescript
32286 projects

Build Status npm

tslint-no-unused-expression-chai (DEPRECATED)

Per tslint being deprecated, this rules no longer being updated.

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 [email protected]*.* 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
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].