diff --git a/packages/unleash-api/app.js b/packages/unleash-api/app.js index 12bdaaa0aa..9fc92d3efc 100644 --- a/packages/unleash-api/app.js +++ b/packages/unleash-api/app.js @@ -9,7 +9,7 @@ const logger = require('./lib/logger'); const routes = require('./lib/routes'); const path = require('path'); -module.exports = function(config) { +module.exports = function (config) { const app = express(); const router = express.Router(); // eslint-disable-line new-cap const baseUriPath = config.baseUriPath || ''; diff --git a/packages/unleash-api/lib/db/dbPool.js b/packages/unleash-api/lib/db/dbPool.js index 761657c71b..a105b47931 100644 --- a/packages/unleash-api/lib/db/dbPool.js +++ b/packages/unleash-api/lib/db/dbPool.js @@ -1,7 +1,7 @@ 'use strict'; const knex = require('knex'); -module.exports = function(databaseConnection) { +module.exports = function (databaseConnection) { return knex({ client: 'pg', connection: databaseConnection, diff --git a/packages/unleash-api/lib/db/event.js b/packages/unleash-api/lib/db/event.js index 8196d1cb89..f23afda9cd 100644 --- a/packages/unleash-api/lib/db/event.js +++ b/packages/unleash-api/lib/db/event.js @@ -1,8 +1,8 @@ 'use strict'; const EVENT_COLUMNS = ['id', 'type', 'created_by', 'created_at', 'data']; -module.exports = function(db) { - function storeEvent(event) { +module.exports = function (db) { + function storeEvent (event) { return db('events').insert({ type: event.type, created_by: event.createdBy, // eslint-disable-line @@ -10,7 +10,7 @@ module.exports = function(db) { }); } - function getEvents() { + function getEvents () { return db .select(EVENT_COLUMNS) .from('events') @@ -18,7 +18,7 @@ module.exports = function(db) { .map(rowToEvent); } - function getEventsFilterByName(name) { + function getEventsFilterByName (name) { return db .select(EVENT_COLUMNS) .from('events') @@ -27,7 +27,7 @@ module.exports = function(db) { .map(rowToEvent); } - function rowToEvent(row) { + function rowToEvent (row) { return { id: row.id, type: row.type, diff --git a/packages/unleash-api/lib/db/feature.js b/packages/unleash-api/lib/db/feature.js index 62db7446a2..e9325df883 100644 --- a/packages/unleash-api/lib/db/feature.js +++ b/packages/unleash-api/lib/db/feature.js @@ -4,7 +4,7 @@ const logger = require('../logger'); const NotFoundError = require('../error/NotFoundError'); const FEATURE_COLUMNS = ['name', 'description', 'enabled', 'strategy_name', 'parameters']; -module.exports = function(db, eventStore) { +module.exports = function (db, eventStore) { eventStore.on(eventType.featureCreated, event => createFeature(event.data)); eventStore.on(eventType.featureUpdated, event => updateFeature(event.data)); @@ -13,7 +13,7 @@ module.exports = function(db, eventStore) { eventStore.on(eventType.featureRevived, event => reviveFeature(event.data)); - function getFeatures() { + function getFeatures () { return db .select(FEATURE_COLUMNS) .from('features') @@ -22,7 +22,7 @@ module.exports = function(db, eventStore) { .map(rowToFeature); } - function getFeature(name) { + function getFeature (name) { return db .first(FEATURE_COLUMNS) .from('features') @@ -30,7 +30,7 @@ module.exports = function(db, eventStore) { .then(rowToFeature); } - function getArchivedFeatures() { + function getArchivedFeatures () { return db .select(FEATURE_COLUMNS) .from('features') @@ -40,7 +40,7 @@ module.exports = function(db, eventStore) { } - function rowToFeature(row) { + function rowToFeature (row) { if (!row) { throw new NotFoundError('No feature toggle found'); } @@ -54,18 +54,18 @@ module.exports = function(db, eventStore) { }; } - function eventDataToRow(data) { + function eventDataToRow (data) { return { name: data.name, description: data.description, enabled: data.enabled ? 1 : 0, - archived: data.archived ? 1 :0, + archived: data.archived ? 1 : 0, strategy_name: data.strategy, // eslint-disable-line parameters: data.parameters, }; } - function createFeature(data) { + function createFeature (data) { return db('features') .insert(eventDataToRow(data)) .catch(err => { @@ -73,7 +73,7 @@ module.exports = function(db, eventStore) { }); } - function updateFeature(data) { + function updateFeature (data) { return db('features') .where({ name: data.name }) .update(eventDataToRow(data)) @@ -82,7 +82,7 @@ module.exports = function(db, eventStore) { }); } - function archiveFeature(data) { + function archiveFeature (data) { return db('features') .where({ name: data.name }) .update({ archived: 1 }) @@ -91,7 +91,7 @@ module.exports = function(db, eventStore) { }); } - function reviveFeature(data) { + function reviveFeature (data) { return db('features') .where({ name: data.name }) .update({ archived: 0, enabled: 0 }) diff --git a/packages/unleash-api/lib/db/strategy.js b/packages/unleash-api/lib/db/strategy.js index 054d5d08da..95106d2d1e 100644 --- a/packages/unleash-api/lib/db/strategy.js +++ b/packages/unleash-api/lib/db/strategy.js @@ -4,7 +4,7 @@ const logger = require('../logger'); const NotFoundError = require('../error/NotFoundError'); const STRATEGY_COLUMNS = ['name', 'description', 'parameters_template']; -module.exports = function(db, eventStore) { +module.exports = function (db, eventStore) { eventStore.on(eventType.strategyCreated, event => createStrategy(event.data)); eventStore.on(eventType.strategyDeleted, event => { @@ -16,7 +16,7 @@ module.exports = function(db, eventStore) { }); }); - function getStrategies() { + function getStrategies () { return db .select(STRATEGY_COLUMNS) .from('strategies') @@ -24,7 +24,7 @@ module.exports = function(db, eventStore) { .map(rowToStrategy); } - function getStrategy(name) { + function getStrategy (name) { return db .first(STRATEGY_COLUMNS) .from('strategies') @@ -32,7 +32,7 @@ module.exports = function(db, eventStore) { .then(rowToStrategy); } - function rowToStrategy(row) { + function rowToStrategy (row) { if (!row) { throw new NotFoundError('No strategy found'); } @@ -44,7 +44,7 @@ module.exports = function(db, eventStore) { }; } - function eventDataToRow(data) { + function eventDataToRow (data) { return { name: data.name, description: data.description, @@ -52,7 +52,7 @@ module.exports = function(db, eventStore) { }; } - function createStrategy(data) { + function createStrategy (data) { db('strategies') .insert(eventDataToRow(data)) .catch(err => { diff --git a/packages/unleash-api/lib/error/NameExistsError.js b/packages/unleash-api/lib/error/NameExistsError.js index 106e3eb44f..c821f11ef1 100644 --- a/packages/unleash-api/lib/error/NameExistsError.js +++ b/packages/unleash-api/lib/error/NameExistsError.js @@ -1,7 +1,7 @@ 'use strict'; const util = require('util'); -function NameExistsError(message) { +function NameExistsError (message) { Error.call(this); Error.captureStackTrace(this, this.constructor); diff --git a/packages/unleash-api/lib/error/NotFoundError.js b/packages/unleash-api/lib/error/NotFoundError.js index 9a93e40ea8..f68bec46fa 100644 --- a/packages/unleash-api/lib/error/NotFoundError.js +++ b/packages/unleash-api/lib/error/NotFoundError.js @@ -1,7 +1,7 @@ 'use strict'; const util = require('util'); -function NotFoundError(message) { +function NotFoundError (message) { Error.call(this); Error.captureStackTrace(this, this.constructor); diff --git a/packages/unleash-api/lib/error/ValidationError.js b/packages/unleash-api/lib/error/ValidationError.js index ff4df57e56..67fdd1b829 100644 --- a/packages/unleash-api/lib/error/ValidationError.js +++ b/packages/unleash-api/lib/error/ValidationError.js @@ -1,7 +1,7 @@ 'use strict'; const util = require('util'); -function ValidationError(message) { +function ValidationError (message) { Error.call(this); Error.captureStackTrace(this, this.constructor); diff --git a/packages/unleash-api/lib/error/validateRequest.js b/packages/unleash-api/lib/error/validateRequest.js index a09691b309..ad2a21e528 100644 --- a/packages/unleash-api/lib/error/validateRequest.js +++ b/packages/unleash-api/lib/error/validateRequest.js @@ -2,7 +2,7 @@ const Promise = require('bluebird'); const ValidationError = require('./ValidationError'); -function validateRequest(req) { +function validateRequest (req) { return new Promise((resolve, reject) => { if (req.validationErrors()) { reject(new ValidationError('Invalid syntax')); diff --git a/packages/unleash-api/lib/eventDiffer.js b/packages/unleash-api/lib/eventDiffer.js index a6fc614066..143b554a68 100644 --- a/packages/unleash-api/lib/eventDiffer.js +++ b/packages/unleash-api/lib/eventDiffer.js @@ -14,7 +14,7 @@ const featureTypes = [ eventType.featureRevived, ]; -function baseTypeFor(event) { +function baseTypeFor (event) { if (featureTypes.indexOf(event.type) !== -1) { return 'features'; } else if (strategyTypes.indexOf(event.type) !== -1) { @@ -23,7 +23,7 @@ function baseTypeFor(event) { throw new Error(`unknown event type: ${JSON.stringify(event)}`); } -function groupByBaseTypeAndName(events) { +function groupByBaseTypeAndName (events) { const groups = {}; events.forEach(event => { @@ -38,7 +38,7 @@ function groupByBaseTypeAndName(events) { return groups; } -function eachConsecutiveEvent(events, callback) { +function eachConsecutiveEvent (events, callback) { const groups = groupByBaseTypeAndName(events); Object.keys(groups).forEach(baseType => { @@ -60,7 +60,7 @@ function eachConsecutiveEvent(events, callback) { }); } -function addDiffs(events) { +function addDiffs (events) { eachConsecutiveEvent(events, (left, right) => { if (right) { left.diffs = diff(right.data, left.data); diff --git a/packages/unleash-api/lib/eventStore.js b/packages/unleash-api/lib/eventStore.js index 2a99167aa4..5d70c0f682 100644 --- a/packages/unleash-api/lib/eventStore.js +++ b/packages/unleash-api/lib/eventStore.js @@ -2,7 +2,7 @@ const util = require('util'); const EventEmitter = require('events').EventEmitter; -function EventStore(eventDb) { +function EventStore (eventDb) { this.eventDb = eventDb; EventEmitter.call(this); } diff --git a/packages/unleash-api/lib/extractUser.js b/packages/unleash-api/lib/extractUser.js index 69006970ad..996c5b5689 100644 --- a/packages/unleash-api/lib/extractUser.js +++ b/packages/unleash-api/lib/extractUser.js @@ -1,5 +1,5 @@ 'use strict'; -function extractUsername(req) { +function extractUsername (req) { return req.cookies.username || 'unknown'; } module.exports = extractUsername; diff --git a/packages/unleash-api/lib/routes/feature-archive.js b/packages/unleash-api/lib/routes/feature-archive.js index fd476a3757..24a3976ad1 100644 --- a/packages/unleash-api/lib/routes/feature-archive.js +++ b/packages/unleash-api/lib/routes/feature-archive.js @@ -22,11 +22,9 @@ module.exports = function (app, config) { type: eventType.featureRevived, createdBy: req.connection.remoteAddress, data: req.body, - })).then(() => { - res.status(200).end(); - }).catch(ValidationError, () => { - res.status(400).json(req.validationErrors()); - }) + })) + .then(() => res.status(200).end()) + .catch(ValidationError, () => res.status(400).json(req.validationErrors())) .catch(err => { logger.error('Could not revive feature toggle', err); res.status(500).end(); diff --git a/packages/unleash-api/lib/routes/feature.js b/packages/unleash-api/lib/routes/feature.js index b1e0409a21..634aae34dc 100644 --- a/packages/unleash-api/lib/routes/feature.js +++ b/packages/unleash-api/lib/routes/feature.js @@ -45,7 +45,8 @@ module.exports = function (app, config) { .catch(NameExistsError, () => { res.status(403).json([{ msg: `A feature named '${req.body.name}' already exists. It could be archived.`, - }]).end(); + }]) + .end(); }) .catch(ValidationError, () => { res.status(400).json(req.validationErrors()); @@ -105,7 +106,7 @@ module.exports = function (app, config) { }); }); - function validateUniqueName(req) { + function validateUniqueName (req) { return new Promise((resolve, reject) => { featureDb.getFeature(req.body.name) .then(() => { diff --git a/packages/unleash-api/lib/routes/strategy.js b/packages/unleash-api/lib/routes/strategy.js index 4545f0912b..b47636fc59 100644 --- a/packages/unleash-api/lib/routes/strategy.js +++ b/packages/unleash-api/lib/routes/strategy.js @@ -64,22 +64,20 @@ module.exports = function (app, config) { createdBy: extractUser(req), data: newStrategy, })) - .then(() => { - res.status(201).end(); - }) + .then(() => res.status(201).end()) .catch(NameExistsError, () => { - res.status(403).json([{ msg: `A strategy named '${req.body.name}' already exists.` }]).end(); - }) - .catch(ValidationError, () => { - res.status(400).json(req.validationErrors()); + res.status(403) + .json([{ msg: `A strategy named '${req.body.name}' already exists.` }]) + .end(); }) + .catch(ValidationError, () => res.status(400).json(req.validationErrors())) .catch(err => { logger.error('Could not create strategy', err); res.status(500).end(); }); }); - function validateStrategyName(req) { + function validateStrategyName (req) { return new Promise((resolve, reject) => { strategyDb.getStrategy(req.body.name) .then(() => { diff --git a/packages/unleash-api/scripts/migration-runner.js b/packages/unleash-api/scripts/migration-runner.js index 85a9adc44f..1535a852d6 100644 --- a/packages/unleash-api/scripts/migration-runner.js +++ b/packages/unleash-api/scripts/migration-runner.js @@ -3,12 +3,12 @@ const fs = require('fs'); const util = require('util'); const path = require('path'); -const runMigration = function(migrationPath, db, callback) { +const runMigration = function (migrationPath, db, callback) { db.runSql(fs.readFileSync(migrationPath, { encoding: 'utf8' }), callback); }; module.exports = { - create(name) { + create (name) { const format = path.resolve(__dirname, '../migrations/sql/%s.%s.sql'); return { diff --git a/packages/unleash-api/server-impl.js b/packages/unleash-api/server-impl.js index d06e6f3acd..853829d696 100644 --- a/packages/unleash-api/server-impl.js +++ b/packages/unleash-api/server-impl.js @@ -2,7 +2,7 @@ const logger = require('./lib/logger'); const defaultDatabaseUri = process.env.DATABASE_URL; -function start(options) { +function start (options) { options = options || {}; const db = require('./lib/db/dbPool')(options.databaseUri || defaultDatabaseUri); diff --git a/packages/unleash-api/test/databaseConfig.js b/packages/unleash-api/test/databaseConfig.js index 430438fe87..ba39dbb6d3 100644 --- a/packages/unleash-api/test/databaseConfig.js +++ b/packages/unleash-api/test/databaseConfig.js @@ -1,11 +1,12 @@ 'use strict'; -function getDatabaseUri() { +function getDatabaseUri () { if (!process.env.TEST_DATABASE_URL) { throw new Error('please set TEST_DATABASE_URL'); - } else { - return process.env.TEST_DATABASE_URL; } + + return process.env.TEST_DATABASE_URL; } + module.exports = { getDatabaseUri, }; diff --git a/packages/unleash-api/test/specHelper.js b/packages/unleash-api/test/specHelper.js index 716e18da00..a9118b7fb8 100644 --- a/packages/unleash-api/test/specHelper.js +++ b/packages/unleash-api/test/specHelper.js @@ -23,7 +23,7 @@ const app = require('../app')({ Promise.promisifyAll(request); request = request(app); -function createStrategies() { +function createStrategies () { return Promise.map([ { name: 'default', @@ -40,7 +40,7 @@ function createStrategies() { ], strategy => strategyDb._createStrategy(strategy)); } -function createFeatures() { +function createFeatures () { return Promise.map([ { name: 'featureX', @@ -96,19 +96,19 @@ function createFeatures() { ], feature => featureDb._createFeature(feature)); } -function destroyStrategies() { +function destroyStrategies () { return knex('strategies').del(); } -function destroyFeatures() { +function destroyFeatures () { return knex('features').del(); } -function resetDatabase() { +function resetDatabase () { return Promise.all([destroyStrategies(), destroyFeatures()]); } -function setupDatabase() { +function setupDatabase () { return Promise.all([createStrategies(), createFeatures()]); } @@ -117,7 +117,7 @@ module.exports = { db: { reset: resetDatabase, setup: setupDatabase, - resetAndSetup() { + resetAndSetup () { return resetDatabase().then(setupDatabase); }, }, diff --git a/packages/unleash-frontend/jest-preprocessor.js b/packages/unleash-frontend/jest-preprocessor.js index d16cc2c3c9..66c8d10d00 100644 --- a/packages/unleash-frontend/jest-preprocessor.js +++ b/packages/unleash-frontend/jest-preprocessor.js @@ -3,7 +3,7 @@ const ReactTools = require('react-tools'); module.exports = { - process(src) { + process (src) { return ReactTools.transform(src); }, }; diff --git a/packages/unleash-frontend/public/js/UnleashApp.jsx b/packages/unleash-frontend/public/js/UnleashApp.jsx index 5d0c42587c..8d8733666c 100644 --- a/packages/unleash-frontend/public/js/UnleashApp.jsx +++ b/packages/unleash-frontend/public/js/UnleashApp.jsx @@ -15,7 +15,7 @@ const UnleashApp = React.createClass({ router: React.PropTypes.func, }, - getInitialState() { + getInitialState () { return { features: FeatureToggleStore.getFeatureToggles(), strategies: StrategyStore.getStrategies(), @@ -23,40 +23,40 @@ const UnleashApp = React.createClass({ }; }, - onFeatureToggleChange() { + onFeatureToggleChange () { this.setState({ features: FeatureToggleStore.getFeatureToggles(), }); }, - onStrategiesChange() { + onStrategiesChange () { this.setState({ strategies: StrategyStore.getStrategies(), }); }, - onArchiveChange() { + onArchiveChange () { this.setState({ archivedFeatures: ArchiveStore.getArchivedToggles(), }); }, - componentDidMount() { + componentDidMount () { this.unsubscribeFS = FeatureToggleStore.listen(this.onFeatureToggleChange); this.unsubscribeSS = StrategyStore.listen(this.onStrategiesChange); this.unsubscribeAS = ArchiveStore.listen(this.onArchiveChange); }, - componentWillUnmount() { + componentWillUnmount () { this.unsubscribeFS(); this.unsubscribeSS(); this.unsubscribeAS(); }, - componentWillMount() { + componentWillMount () { initalizer(30); }, - renderLink(id, label) { + renderLink (id, label) { return ( {label} @@ -64,7 +64,7 @@ const UnleashApp = React.createClass({ ); }, - render() { + render () { return (