Rules: No Unsafe Regex
Installation
$ npm install eslint-plugin-no-unsafe-regex
Usage
Plugin
To use the plugin in an .eslintrc
file,
'plugins':'no-unsafe-regex'
where no-unsafe-regex
is shorthand for eslint-plugin-no-unsafe-regex
. To configure plugin rules,
'plugins':'no-unsafe-regex''rules':'no-unsafe-regex/no-unsafe-regex': 2
where a plugin rule must be prefixed with the plugin name and a /
; e.g., no-unsafe-regex/<rule>
.
Module
var plugin = ;
plugin
ESLint rules to disallow unsafe regular expressions.
consoledir plugin ;/*{'rules': {'no-unsafe-regex': <rule>},'rulesConfig': {'no-unsafe-regex': 2}}*/
Notes
-
In order to use the plugin, the plugin must first be installed as a
node_modules
dependency. -
The plugin only validates regular expression literals and regular expressions created using the
RegExp
constructor and literal arguments.var re;// Validated:re = /beep/;// Validated:re = 'beep' 'i' ;// Not validated:str = 'beep';re = str 'i' ;// Not validated:re = 5 ;Validating regular expressions created using non-literal arguments would require reconstructing an execution context, which is beyond the scope of this module. For example, consider
var getStr =str = ;var re = str ;If the return value of
getStr
is dynamic, validation is impossible.
Examples
moduleexports ='env':'node': true'plugins':// Declare the plugin:'no-unsafe-regex''rules':'no-path-concat': 2'no-process-exit': 0'no-sync': 1'no-mixed-requires': 2 false// Prefix a plugin rule with `{{plugin_name}}/`:'no-unsafe-regex/no-unsafe-regex': 2;
To run the example code from the top-level application directory,
$ node ./examples/index.js
Tests
Unit
Unit tests use the Mocha test framework with Chai assertions. To run the tests, execute the following command in the top-level application directory:
$ make test
All new feature development should have corresponding unit tests to validate correct functionality.
Test Coverage
This repository uses Istanbul as its code coverage tool. To generate a test coverage report, execute the following command in the top-level application directory:
$ make test-cov
Istanbul creates a ./reports/coverage
directory. To access an HTML version of the report,
$ make view-cov
License
Copyright
Copyright © 2015. Athan Reines.