diff --git a/.eslintignore b/.eslintignore new file mode 100644 index 0000000..62562b7 --- /dev/null +++ b/.eslintignore @@ -0,0 +1,2 @@ +coverage +node_modules diff --git a/.eslintrc b/.eslintrc new file mode 100644 index 0000000..e3578aa --- /dev/null +++ b/.eslintrc @@ -0,0 +1,3 @@ +{ + "extends": "standard" +} diff --git a/.travis.yml b/.travis.yml index 6525236..57911e4 100644 --- a/.travis.yml +++ b/.travis.yml @@ -17,6 +17,7 @@ cache: before_install: # Setup Node.js version-specific dependencies - "test $TRAVIS_NODE_VERSION != '0.8' || npm rm --save-dev istanbul" + - "test $(echo $TRAVIS_NODE_VERSION | cut -d. -f1) -ge 4 || npm rm --save-dev eslint eslint-config-standard eslint-plugin-promise eslint-plugin-standard" # Update Node.js modules - "test ! -d node_modules || npm prune" - "test ! -d node_modules || npm rebuild" @@ -24,5 +25,6 @@ script: # Run test script, depending on istanbul install - "test ! -z $(npm -ps ls istanbul) || npm test" - "test -z $(npm -ps ls istanbul) || npm run-script test-travis" + - "test -z $(npm -ps ls eslint ) || npm run-script lint" after_script: - "test -e ./coverage/lcov.info && npm install coveralls@2 && cat ./coverage/lcov.info | coveralls" diff --git a/index.js b/index.js index 3700ef9..7587bfc 100644 --- a/index.js +++ b/index.js @@ -34,7 +34,7 @@ module.exports = responseTime * @api public */ -function responseTime(options) { +function responseTime (options) { var opts = options || {} if (typeof options === 'number') { @@ -48,10 +48,10 @@ function responseTime(options) { ? createSetHeader(opts) : opts - return function responseTime(req, res, next) { + return function responseTime (req, res, next) { var startAt = process.hrtime() - onHeaders(res, function onHeaders() { + onHeaders(res, function onHeaders () { var diff = process.hrtime(startAt) var time = diff[0] * 1e3 + diff[1] * 1e-6 @@ -67,7 +67,7 @@ function responseTime(options) { * @api private */ -function createSetHeader(options) { +function createSetHeader (options) { // response time digits var digits = options.digits !== undefined ? options.digits @@ -81,7 +81,7 @@ function createSetHeader(options) { ? Boolean(options.suffix) : true - return function setResponseHeader(req, res, time) { + return function setResponseHeader (req, res, time) { if (res.getHeader(header)) { return } diff --git a/package.json b/package.json index 425ec09..b4f78f9 100644 --- a/package.json +++ b/package.json @@ -20,6 +20,10 @@ }, "devDependencies": { "after": "0.8.2", + "eslint": "3.10.1", + "eslint-config-standard": "6.2.1", + "eslint-plugin-promise": "3.3.2", + "eslint-plugin-standard": "2.0.1", "istanbul": "0.4.5", "mocha": "2.5.3", "supertest": "1.1.0" @@ -33,6 +37,7 @@ "node": ">= 0.8.0" }, "scripts": { + "lint": "eslint .", "test": "mocha --reporter spec --bail --check-leaks test/", "test-cov": "istanbul cover node_modules/mocha/bin/_mocha -- --reporter dot --check-leaks test/", "test-travis": "istanbul cover node_modules/mocha/bin/_mocha --report lcovonly -- --reporter spec --check-leaks test/" diff --git a/test/.eslintrc b/test/.eslintrc new file mode 100644 index 0000000..29c15b0 --- /dev/null +++ b/test/.eslintrc @@ -0,0 +1,5 @@ +{ + "env": { + "mocha": true + } +} diff --git a/test/test.js b/test/test.js index 89986bf..24fc246 100644 --- a/test/test.js +++ b/test/test.js @@ -1,10 +1,10 @@ process.env.NO_DEPRECATION = 'response-time' -var after = require('after'); -var assert = require('assert'); -var http = require('http'); -var request = require('supertest'); +var after = require('after') +var assert = require('assert') +var http = require('http') +var request = require('supertest') var responseTime = require('..') describe('responseTime()', function () { @@ -12,11 +12,11 @@ describe('responseTime()', function () { var server = createServer() request(server) .get('/') - .expect('X-Response-Time', /^[0-9\.]+ms$/, done) + .expect('X-Response-Time', /^[0-9.]+ms$/, done) }) it('should not override X-Response-Time header', function (done) { - var server = createServer(undefined, function(req, res) { + var server = createServer(undefined, function (req, res) { res.setHeader('X-Response-Time', 'bogus') }) @@ -110,14 +110,14 @@ describe('responseTime(options)', function () { var server = createServer() request(server) .get('/') - .expect('X-Response-Time', /^[0-9\.]+ms$/, done) + .expect('X-Response-Time', /^[0-9.]+ms$/, done) }) it('should allow custom header name', function (done) { var server = createServer({ header: 'X-Time-Taken' }) request(server) .get('/') - .expect('X-Time-Taken', /^[0-9\.]+ms$/, done) + .expect('X-Time-Taken', /^[0-9.]+ms$/, done) }) }) @@ -126,19 +126,19 @@ describe('responseTime(options)', function () { var server = createServer() request(server) .get('/') - .expect('X-Response-Time', /^[0-9\.]+ms$/, done) + .expect('X-Response-Time', /^[0-9.]+ms$/, done) }) it('should allow disabling suffix', function (done) { var server = createServer({ suffix: false }) request(server) .get('/') - .expect('X-Response-Time', /^[0-9\.]+$/, done) + .expect('X-Response-Time', /^[0-9.]+$/, done) }) }) }) -function createServer(opts, fn) { +function createServer (opts, fn) { var _responseTime = responseTime(opts) return http.createServer(function (req, res) { _responseTime(req, res, function (err) { @@ -151,7 +151,7 @@ function createServer(opts, fn) { }) } -function shouldNotHaveHeader(header) { +function shouldNotHaveHeader (header) { return function (res) { assert.ok(!(header.toLowerCase() in res.headers), 'should not have header ' + header) }