diff --git a/.eslintignore b/.eslintignore index 96212a35..77490d83 100644 --- a/.eslintignore +++ b/.eslintignore @@ -1 +1,2 @@ **/*{.,-}min.js +**/test/fixtures/* diff --git a/.eslintrc.js b/.eslintrc.js index ca2fbc3d..e6db1e96 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -1,5 +1,8 @@ module.exports = { root: true, + parserOptions: { + ecmaVersion: 6, + }, extends: 'eslint:recommended', env: { browser: false, @@ -8,90 +11,88 @@ module.exports = { globals: { }, rules: { - // JSHint "expr" + /*** Possible Errors ***/ + + 'no-console': 0, + 'no-template-curly-in-string': 2, + 'no-unsafe-negation': 2, + + /*** Best Practices ***/ + + 'curly': 2, + 'eqeqeq': 2, + 'guard-for-in': 0, + 'no-caller': 2, + 'no-eq-null': 2, + 'no-eval': 2, + 'no-multi-spaces': [2, { + 'exceptions': { + 'ObjectExpression': true, + 'Property': true, + }, + }], + 'no-new': 0, 'no-unused-expressions': [2, { allowShortCircuit: true, allowTernary: true, }], + 'wrap-iife': 0, + 'yoda': 2, - // JSHint "proto", disabled due to warnings - 'no-proto': 0, + /*** Strict Mode ***/ - // JSHint "strict" 'strict': [2, 'global'], - // JSHint "indent", disabled due to warnings - 'indent': [2, 2, { - 'SwitchCase': 1, - 'VariableDeclarator': { 'var': 2, 'let': 2, 'const': 3 } - }], - - // JSHint "camelcase" - camelcase: 2, - - // JSHint "boss" - 'no-cond-assign': [2, 'except-parens'], + /*** Variables ***/ - // JSHint "curly" - curly: 2, - - // JSHint "latedef" + 'no-undef': 2, + 'no-unused-vars': 2, 'no-use-before-define': [2, 'nofunc'], - // JSHint "debug", disabled already in .jshintrc - 'no-debugger': 0, - - // JSHint "eqeqeq" - eqeqeq: 2, - - // JSHint "evil" - 'no-eval': 2, - - // JSHint "forin", disabled already in .jshintrc - 'guard-for-in': 0, - - // JSHint "immed", disabled already in .jshintrc - 'wrap-iife': 0, + /*** Stylistic Issues ***/ - // JSHint "laxbreak" + 'array-bracket-spacing': 2, + 'block-spacing': 2, + 'brace-style': [2, '1tbs', { + 'allowSingleLine': true, + }], + 'camelcase': 2, + 'comma-dangle': 0, + 'comma-spacing': 2, + 'comma-style': 2, + 'eol-last': 2, + 'func-call-spacing': 2, + 'indent': [2, 2, { + 'SwitchCase': 1, + 'VariableDeclarator': { 'var': 2, 'let': 2, 'const': 3 } + }], + 'key-spacing': 2, + 'keyword-spacing': 2, 'linebreak-style': [2, 'unix'], - - // JSHint "newcap 'new-cap': [2, { properties: false, }], - - // JSHint "noarg" - 'no-caller': 2, - - // JSHint "noempty", JSCS "disallowEmptyBlocks" - 'no-empty': 2, - - // JSHint "quotmark", disabled due to warnings - quotes: [0, 'single'], - - // JSHint "nonew", disabled already in .jshintrc - 'no-new': 0, - - // JSHint "plusplus", disabled already in .jshintrc + 'new-parens': 2, + 'no-array-constructor': 2, + 'no-bitwise': 2, + 'no-lonely-if': 2, + 'no-mixed-operators': 2, 'no-plusplus': 0, - - // JSHint "undef" - 'no-undef': 2, - - // JSHint "unused" - 'no-unused-vars': 2, - - // JSHint "sub", disabled due to warnings - 'dot-notation': 0, - - // JSHint "trailing" 'no-trailing-spaces': 2, - - // JSHint "eqnull" - 'no-eq-null': 2, - - 'no-console': 0, - 'comma-dangle': 0, + 'no-unneeded-ternary': 2, + 'no-whitespace-before-property': 2, + 'object-curly-spacing': [2, 'always'], + 'semi-spacing': 2, + 'semi': 2, + 'space-before-blocks': 2, + 'space-before-function-paren': [2, 'never'], + 'space-in-parens': 2, + 'space-infix-ops': 2, + 'space-unary-ops': 2, + 'quotes': [2, 'single', { + 'allowTemplateLiterals': true, + }], + 'semi': [2, 'always'], + 'wrap-regex': 2 }, }; diff --git a/.jscsrc b/.jscsrc deleted file mode 100644 index ce00409f..00000000 --- a/.jscsrc +++ /dev/null @@ -1,44 +0,0 @@ -{ - "disallowKeywords": ["with"], - "disallowKeywordsOnNewLine": ["else"], - "disallowMixedSpacesAndTabs": true, - "disallowMultipleVarDecl": "exceptUndefined", - "disallowNewlineBeforeBlockStatements": true, - "disallowQuotedKeysInObjects": true, - "disallowSpaceAfterObjectKeys": true, - "disallowSpaceAfterPrefixUnaryOperators": true, - "disallowSpacesInFunction": { - "beforeOpeningRoundBrace": true - }, - "disallowSpacesInsideParentheses": true, - "disallowTrailingWhitespace": true, - "requireCamelCaseOrUpperCaseIdentifiers": true, - "requireCapitalizedComments": true, - "requireCapitalizedConstructors": true, - "requireCurlyBraces": true, - "requireSpaceAfterKeywords": [ - "if", - "else", - "for", - "while", - "do", - "switch", - "case", - "return", - "try", - "catch", - "typeof" - ], - "requireSpaceAfterLineComment": true, - "requireSpaceAfterBinaryOperators": true, - "requireSpaceBeforeBinaryOperators": true, - "requireSpaceBeforeBlockStatements": true, - "requireSpaceBeforeObjectValues": true, - "requireSpacesInFunction": { - "beforeOpeningCurlyBrace": true - }, - "disallowTrailingComma": true, - "validateIndentation": 2, - "validateLineBreaks": "LF", - "validateQuoteMarks": "'" -} diff --git a/.jshintrc b/.jshintrc deleted file mode 100644 index d421faa3..00000000 --- a/.jshintrc +++ /dev/null @@ -1,32 +0,0 @@ -{ - "predef": [ - "document", - "window", - "-Promise" - ], - "browser": true, - "boss": true, - "curly": true, - "debug": false, - "devel": true, - "eqeqeq": true, - "evil": true, - "forin": false, - "immed": false, - "laxbreak": false, - "newcap": true, - "noarg": true, - "noempty": false, - "nonew": false, - "nomen": false, - "onevar": false, - "plusplus": false, - "regexp": false, - "undef": true, - "sub": true, - "strict": false, - "white": false, - "eqnull": true, - "esversion": 6, - "unused": true -} diff --git a/.npmignore b/.npmignore index d990ff37..812bb7a6 100644 --- a/.npmignore +++ b/.npmignore @@ -20,6 +20,5 @@ bower.json ember-cli-build.js testem.js all-commands.sh -lint-test.js testem.json upload-coverage.sh diff --git a/.travis.yml b/.travis.yml index 53f3856b..cad2873c 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,8 +1,8 @@ --- language: node_js node_js: - - "0.12" - - "4.2" + - "4" + - "7" # - "6" - The test that includes coverage runs with 6 sudo: false @@ -19,8 +19,6 @@ matrix: include: - node_js: "6" env: NPM_SCRIPT=client-test - - node_js: "6" - env: NPM_SCRIPT=jscs - node_js: "6" env: NPM_SCRIPT=lint - node_js: "6" diff --git a/lib/.jshintrc b/lib/.jshintrc deleted file mode 100644 index c1f2978b..00000000 --- a/lib/.jshintrc +++ /dev/null @@ -1,3 +0,0 @@ -{ - "node": true -} diff --git a/lib/commands/index.js b/lib/commands/index.js index 5e23b55a..ca8729b9 100644 --- a/lib/commands/index.js +++ b/lib/commands/index.js @@ -1,11 +1,11 @@ 'use strict'; module.exports = { - try: require('./try'), + try: require('./try'), 'try:testall': require('./testall'), - 'try:reset': require('./reset'), - 'try:each': require('./try-each'), - 'try:one': require('./try-one'), - 'try:ember': require('./try-ember'), - 'try:config': require('./config') + 'try:reset': require('./reset'), + 'try:each': require('./try-each'), + 'try:one': require('./try-one'), + 'try:ember': require('./try-ember'), + 'try:config': require('./config') }; diff --git a/lib/commands/try-each.js b/lib/commands/try-each.js index e3e5b41f..82ad81df 100644 --- a/lib/commands/try-each.js +++ b/lib/commands/try-each.js @@ -3,7 +3,7 @@ var debug = require('debug')('ember-try:commands:try-each'); module.exports = { name: 'try:each', - description: 'Runs each of the dependency scenarios specified in config with the specified command. The command defaults to `ember test`' , + description: 'Runs each of the dependency scenarios specified in config with the specified command. The command defaults to `ember test`', works: 'insideProject', availableOptions: [ diff --git a/lib/dependency-manager-adapters/bower.js b/lib/dependency-manager-adapters/bower.js index 3864eaf8..338a148b 100644 --- a/lib/dependency-manager-adapters/bower.js +++ b/lib/dependency-manager-adapters/bower.js @@ -1,13 +1,13 @@ 'use strict'; -var CoreObject = require('core-object'); -var fs = require('fs-extra'); -var RSVP = require('rsvp'); -var path = require('path'); -var extend = require('extend'); -var debug = require('debug')('ember-try:dependency-manager-adapter:bower'); -var rimraf = RSVP.denodeify(require('rimraf')); -var resolve = RSVP.denodeify(require('resolve')); +var CoreObject = require('core-object'); +var fs = require('fs-extra'); +var RSVP = require('rsvp'); +var path = require('path'); +var extend = require('extend'); +var debug = require('debug')('ember-try:dependency-manager-adapter:bower'); +var rimraf = RSVP.denodeify(require('rimraf')); +var resolve = RSVP.denodeify(require('resolve')); var findEmberPath = require('../utils/find-ember-path'); module.exports = CoreObject.extend({ @@ -34,7 +34,7 @@ module.exports = CoreObject.extend({ if (depSet[this.configKey]) { return depSet[this.configKey]; } - return {dependencies: depSet.dependencies, devDependencies: depSet.devDependencies, resolutions: depSet.resolutions}; + return { dependencies: depSet.dependencies, devDependencies: depSet.devDependencies, resolutions: depSet.resolutions }; }, _writeBowerFileWithDepSetChanges: function(depSet) { var adapter = this; @@ -117,7 +117,7 @@ module.exports = CoreObject.extend({ }) .then(function(bowerPath) { debug('Run bower install using bower at %s', bowerPath); - return adapter.run('node', [].concat([bowerPath, 'install', '--config.interactive=false'], options), {cwd: adapter.cwd}); + return adapter.run('node', [].concat([bowerPath, 'install', '--config.interactive=false'], options), { cwd: adapter.cwd }); }); }, _bowerJSONForDependencySet: function(bowerJSON, depSet) { diff --git a/lib/dependency-manager-adapters/npm.js b/lib/dependency-manager-adapters/npm.js index 0a844bbe..ba3ecabc 100644 --- a/lib/dependency-manager-adapters/npm.js +++ b/lib/dependency-manager-adapters/npm.js @@ -1,12 +1,12 @@ 'use strict'; -var CoreObject = require('core-object'); -var fs = require('fs-extra'); -var RSVP = require('rsvp'); -var path = require('path'); -var extend = require('extend'); -var debug = require('debug')('ember-try:dependency-manager-adapter:npm'); -var rimraf = RSVP.denodeify(require('rimraf')); +var CoreObject = require('core-object'); +var fs = require('fs-extra'); +var RSVP = require('rsvp'); +var path = require('path'); +var extend = require('extend'); +var debug = require('debug')('ember-try:dependency-manager-adapter:npm'); +var rimraf = RSVP.denodeify(require('rimraf')); module.exports = CoreObject.extend({ init: function() { @@ -57,7 +57,7 @@ module.exports = CoreObject.extend({ return adapter._restoreOriginalDependencies().then(function() { debug('Remove backup package.json and node_modules'); return RSVP.all([rimraf(path.join(adapter.cwd, adapter.packageJSONBackupFileName)), - rimraf(path.join(adapter.cwd, adapter.nodeModulesBackupLocation))]); + rimraf(path.join(adapter.cwd, adapter.nodeModulesBackupLocation))]); }).catch(function(e) { console.log('Error cleaning up npm scenario:', e); }) @@ -79,9 +79,9 @@ module.exports = CoreObject.extend({ debug('Run npm install with options %s', options); - return adapter.run('npm', [].concat(['install'], options), {cwd: adapter.cwd}).then(function() { + return adapter.run('npm', [].concat(['install'], options), { cwd: adapter.cwd }).then(function() { debug('Run npm prune'); - return adapter.run('npm', [].concat(['prune'], options), {cwd: adapter.cwd}); + return adapter.run('npm', [].concat(['prune'], options), { cwd: adapter.cwd }); }); }, _packageJSONForDependencySet: function(packageJSON, depSet) { @@ -118,7 +118,7 @@ module.exports = CoreObject.extend({ copy(path.join(this.cwd, this.packageJSONBackupFileName), path.join(this.cwd, this.packageJSON)), copy(path.join(this.cwd, this.nodeModulesBackupLocation), - path.join(this.cwd, this.nodeModules), {clobber: true})]); + path.join(this.cwd, this.nodeModules), { clobber: true })]); }, _backupOriginalDependencies: function() { var copy = RSVP.denodeify(fs.copy); @@ -129,6 +129,6 @@ module.exports = CoreObject.extend({ copy(path.join(this.cwd, this.packageJSON), path.join(this.cwd, this.packageJSONBackupFileName)), copy(path.join(this.cwd, this.nodeModules), - path.join(this.cwd, this.nodeModulesBackupLocation), {clobber: true})]); + path.join(this.cwd, this.nodeModulesBackupLocation), { clobber: true })]); } }); diff --git a/lib/tasks/reset.js b/lib/tasks/reset.js index 940f2a16..6e5c4569 100644 --- a/lib/tasks/reset.js +++ b/lib/tasks/reset.js @@ -1,6 +1,6 @@ 'use strict'; -var CoreObject = require('core-object'); -var debug = require('debug')('ember-try:commands:reset'); +var CoreObject = require('core-object'); +var debug = require('debug')('ember-try:commands:reset'); var ScenarioManager = require('../utils/scenario-manager'); var DependencyManagerAdapterFactory = require('./../utils/dependency-manager-adapter-factory'); diff --git a/lib/tasks/try-each.js b/lib/tasks/try-each.js index 8c8cafbf..80d65aff 100644 --- a/lib/tasks/try-each.js +++ b/lib/tasks/try-each.js @@ -1,10 +1,10 @@ 'use strict'; -var CoreObject = require('core-object'); -var RSVP = require('rsvp'); -var mapSeries = require('promise-map-series'); -var chalk = require('chalk'); -var debug = require('debug')('ember-try:task:try-each'); -var runCommand = require('./../utils/run-command'); +var CoreObject = require('core-object'); +var RSVP = require('rsvp'); +var mapSeries = require('promise-map-series'); +var chalk = require('chalk'); +var debug = require('debug')('ember-try:task:try-each'); +var runCommand = require('./../utils/run-command'); module.exports = CoreObject.extend({ run: function(scenarios, options) { @@ -15,15 +15,15 @@ module.exports = CoreObject.extend({ var task = this; var dependencyManagerAdapters = task.dependencyManagerAdapters || DependencyManagerAdapterFactory.generateFromConfig(task.config, task.project.root); debug('DependencyManagerAdapters: %s', dependencyManagerAdapters.map(function(item) { return item.configKey; })); - task.ScenarioManager = new ScenarioManager({ui: task.ui, - dependencyManagerAdapters: dependencyManagerAdapters + task.ScenarioManager = new ScenarioManager({ ui: task.ui, + dependencyManagerAdapters: dependencyManagerAdapters }); task._canceling = false; task._on('SIGINT', function() { task._canceling = true; task.ui.writeLine('\nGracefully shutting down from SIGINT (Ctrl-C)'); - return task.ScenarioManager.cleanup() + return task.ScenarioManager.cleanup(); }); return task.ScenarioManager.setup().then(function() { @@ -66,7 +66,7 @@ module.exports = CoreObject.extend({ debug('With:\n', runResults); - return task._runCommand({commandArgs: command, commandOptions: task._commandOptions()}).then(function(result) { + return task._runCommand({ commandArgs: command, commandOptions: task._commandOptions() }).then(function(result) { if (task._canceling) { return; } runResults.result = result; @@ -121,9 +121,9 @@ module.exports = CoreObject.extend({ _printResults: function(results) { // Required lazily to improve startup speed. - var ResultSummary = require('./../utils/result-summary'); + var ResultSummary = require('./../utils/result-summary'); - new ResultSummary({ui: this.ui, results: results}).print(); + new ResultSummary({ ui: this.ui, results: results }).print(); }, _exitAsAppropriate: function(results) { diff --git a/lib/utils/config.js b/lib/utils/config.js index 11c51e7c..2baf4727 100644 --- a/lib/utils/config.js +++ b/lib/utils/config.js @@ -31,7 +31,7 @@ function config(options) { if (versionCompatibility) { // Required lazily to improve startup speed. var autoScenarioConfigForEmber = require('ember-try-config'); - return autoScenarioConfigForEmber({versionCompatibility: versionCompatibility, project: options.project}).then(function(autoConfig) { + return autoScenarioConfigForEmber({ versionCompatibility: versionCompatibility, project: options.project }).then(function(autoConfig) { return mergeAutoConfigAndConfigFileData(autoConfig, configData); }); } else { @@ -61,7 +61,7 @@ function mergeAutoConfigAndConfigFileData(autoConfig, configData) { } function versionCompatibilityFromPackageJSON(root) { - var packageJSONFile = path.join(root, 'package.json'); + var packageJSONFile = path.join(root, 'package.json'); if (fs.existsSync(packageJSONFile)) { var packageJSON = JSON.parse(fs.readFileSync(packageJSONFile)); return packageJSON['ember-addon'] ? packageJSON['ember-addon'].versionCompatibility : null; diff --git a/lib/utils/dependency-manager-adapter-factory.js b/lib/utils/dependency-manager-adapter-factory.js index b87ddd9a..75e74c78 100644 --- a/lib/utils/dependency-manager-adapter-factory.js +++ b/lib/utils/dependency-manager-adapter-factory.js @@ -1,7 +1,7 @@ 'use strict'; var BowerAdapter = require('../dependency-manager-adapters/bower'); -var NpmAdapter = require('../dependency-manager-adapters/npm'); +var NpmAdapter = require('../dependency-manager-adapters/npm'); module.exports = { generateFromConfig: function(config, root) { @@ -21,10 +21,10 @@ module.exports = { } }); if (hasNpm) { - adapters.push(new NpmAdapter({cwd: root, managerOptions: config.npmOptions})); + adapters.push(new NpmAdapter({ cwd: root, managerOptions: config.npmOptions })); } if (hasBower) { - adapters.push(new BowerAdapter({cwd: root, managerOptions: config.bowerOptions})); + adapters.push(new BowerAdapter({ cwd: root, managerOptions: config.bowerOptions })); } return adapters; } diff --git a/lib/utils/find-ember-path.js b/lib/utils/find-ember-path.js index b6b94707..58af3140 100644 --- a/lib/utils/find-ember-path.js +++ b/lib/utils/find-ember-path.js @@ -1,7 +1,7 @@ 'use strict'; -var path = require('path'); -var RSVP = require('rsvp'); +var path = require('path'); +var RSVP = require('rsvp'); var resolve = RSVP.denodeify(require('resolve')); module.exports = function(root) { diff --git a/lib/utils/result-summary.js b/lib/utils/result-summary.js index bd8d651f..020dde32 100644 --- a/lib/utils/result-summary.js +++ b/lib/utils/result-summary.js @@ -1,8 +1,8 @@ 'use strict'; -var CoreObject = require('core-object'); -var chalk = require('chalk'); -var Table = require('cli-table2'); +var CoreObject = require('core-object'); +var chalk = require('chalk'); +var Table = require('cli-table2'); module.exports = CoreObject.extend({ print: function() { diff --git a/lib/utils/run-command.js b/lib/utils/run-command.js index 3996343e..c15350cb 100644 --- a/lib/utils/run-command.js +++ b/lib/utils/run-command.js @@ -1,9 +1,9 @@ 'use strict'; -var RSVP = require('rsvp'); -var extend = require('extend'); +var RSVP = require('rsvp'); +var extend = require('extend'); var findEmberPath = require('./find-ember-path'); -var run = require('./run'); +var run = require('./run'); module.exports = function(root, commandArgs, opts) { var options = extend({ cwd: root }, opts); diff --git a/lib/utils/scenario-manager.js b/lib/utils/scenario-manager.js index 924625b3..40db315d 100644 --- a/lib/utils/scenario-manager.js +++ b/lib/utils/scenario-manager.js @@ -1,8 +1,8 @@ 'use strict'; -var CoreObject = require('core-object'); -var RSVP = require('rsvp'); -var mapSeries = require('promise-map-series'); +var CoreObject = require('core-object'); +var RSVP = require('rsvp'); +var mapSeries = require('promise-map-series'); module.exports = CoreObject.extend({ init: function() { diff --git a/lint-test.js b/lint-test.js deleted file mode 100644 index 693f9845..00000000 --- a/lint-test.js +++ /dev/null @@ -1,11 +0,0 @@ -'use strict'; - -var glob = require('glob').sync; - -var paths = glob('test/**/*.js').filter(function(path) { - return !/fixtures/.test(path); -}); - -paths = paths.concat(glob('lib/**/*.js')); - -require('mocha-eslint')(paths); diff --git a/package.json b/package.json index 0786b586..b22b1ccf 100644 --- a/package.json +++ b/package.json @@ -12,13 +12,12 @@ "client-test": "./all-commands.sh", "node-test": "mocha test/**/*.js", "node-test-with-coverage": "istanbul cover _mocha test/**/*.js && ./upload-coverage.sh", - "lint": "mocha lint-test", - "jscs": "jscs lib test", - "test": "npm run-script jscs && npm run-script lint && npm run-script node-test && npm run-script client-test" + "lint": "eslint lib test", + "test": "npm run-script lint && npm run-script node-test && npm run-script client-test" }, "repository": "ember-cli/ember-try", "engines": { - "node": ">= 0.10.0" + "node": "^4.5 || 6.* || 7.*" }, "author": "Katie Gengler", "license": "MIT", @@ -41,12 +40,11 @@ "ember-export-application-global": "^1.0.5", "ember-load-initializers": "^0.5.1", "ember-resolver": "^2.0.3", + "eslint": "^3.16.1", "glob": "^7.0.0", "istanbul": "1.0.0-alpha.2", - "jscs": "^2.0.0", "loader.js": "^4.0.1", "mocha": "^2.2.5", - "mocha-eslint": "^2.0.0", "mockery": "^1.4.0", "tmp-sync": "^1.1.0" }, diff --git a/test/.jshintrc b/test/.jshintrc deleted file mode 100644 index c07c0863..00000000 --- a/test/.jshintrc +++ /dev/null @@ -1,15 +0,0 @@ -{ - "globals": { - "describe": false, - "xdescribe": false, - "ddescribe": false, - "it": false, - "xit": false, - "iit": false, - "beforeEach": false, - "afterEach": false, - "expect": false, - "pending": false, - "spyOn": false - } -} \ No newline at end of file diff --git a/test/commands/try-each-test.js b/test/commands/try-each-test.js index b8cf6f45..38971154 100644 --- a/test/commands/try-each-test.js +++ b/test/commands/try-each-test.js @@ -1,11 +1,11 @@ 'use strict'; -var expect = require('chai').expect; -var RSVP = require('rsvp'); +var expect = require('chai').expect; +var RSVP = require('rsvp'); var TryEachCommand = require('../../lib/commands/try-each'); var origTryEachTask = TryEachCommand._TryEachTask; -var origGetConfig = TryEachCommand._getConfig; +var origGetConfig = TryEachCommand._getConfig; describe('commands/try-each', function() { describe('#run', function() { @@ -16,7 +16,7 @@ describe('commands/try-each', function() { beforeEach(function() { TryEachCommand._getConfig = function() { - return RSVP.resolve(mockConfig || { scenarios: [ ] }); + return RSVP.resolve(mockConfig || { scenarios: [] }); }; TryEachCommand._TryEachTask = MockTryEachTask; @@ -33,7 +33,7 @@ describe('commands/try-each', function() { TryEachCommand._getConfig = function(options) { configPath = options.configPath; - return RSVP.resolve({ scenarios: [ { name: 'foo' }]}); + return RSVP.resolve({ scenarios: [{ name: 'foo' }] }); }; TryEachCommand.run({ configPath: 'foo/bar/widget.js' }, ['foo']); diff --git a/test/commands/try-ember-test.js b/test/commands/try-ember-test.js index 5dd98b83..f8afb07e 100644 --- a/test/commands/try-ember-test.js +++ b/test/commands/try-ember-test.js @@ -1,11 +1,11 @@ 'use strict'; -var expect = require('chai').expect; -var RSVP = require('rsvp'); +var expect = require('chai').expect; +var RSVP = require('rsvp'); var TryEmberCommand = require('../../lib/commands/try-ember'); var origTryEachTask = TryEmberCommand._TryEachTask; -var origGetConfig = TryEmberCommand._getConfig; +var origGetConfig = TryEmberCommand._getConfig; describe('commands/try-ember', function() { describe('#run', function() { @@ -16,7 +16,7 @@ describe('commands/try-ember', function() { beforeEach(function() { TryEmberCommand._getConfig = function() { - return RSVP.resolve(mockConfig || { scenarios: [ ] }); + return RSVP.resolve(mockConfig || { scenarios: [] }); }; TryEmberCommand._TryEachTask = MockTryEachTask; @@ -33,7 +33,7 @@ describe('commands/try-ember', function() { TryEmberCommand._getConfig = function(options) { configPath = options.configPath; - return RSVP.resolve({ scenarios: [ { name: 'foo' }]}); + return RSVP.resolve({ scenarios: [{ name: 'foo' }] }); }; TryEmberCommand.run({ configPath: 'foo/bar/widget.js' }, ['foo']); @@ -45,11 +45,11 @@ describe('commands/try-ember', function() { TryEmberCommand._getConfig = function(options) { versionCompatibility = options.versionCompatibility; - return RSVP.resolve({ scenarios: [ { name: 'foo' }]}); + return RSVP.resolve({ scenarios: [{ name: 'foo' }] }); }; TryEmberCommand.run({}, ['1.13.0']); - expect(versionCompatibility).to.eql({ ember: '1.13.0'}); + expect(versionCompatibility).to.eql({ ember: '1.13.0' }); }); }); }); diff --git a/test/commands/try-one-test.js b/test/commands/try-one-test.js index e42f2ec5..187904be 100644 --- a/test/commands/try-one-test.js +++ b/test/commands/try-one-test.js @@ -1,11 +1,11 @@ 'use strict'; -var expect = require('chai').expect; -var RSVP = require('rsvp'); -var TryOneCommand = require('../../lib/commands/try-one'); +var expect = require('chai').expect; +var RSVP = require('rsvp'); +var TryOneCommand = require('../../lib/commands/try-one'); var origTryEachTask = TryOneCommand._TryEachTask; -var origGetConfig = TryOneCommand._getConfig; +var origGetConfig = TryOneCommand._getConfig; describe('commands/try-one', function() { describe('getCommand', function() { @@ -28,7 +28,7 @@ describe('commands/try-one', function() { beforeEach(function() { TryOneCommand._getConfig = function() { - return RSVP.resolve(mockConfig || { scenarios: [ ] }); + return RSVP.resolve(mockConfig || { scenarios: [] }); }; TryOneCommand._TryEachTask = MockTryEachTask; @@ -51,7 +51,7 @@ describe('commands/try-one', function() { TryOneCommand._getConfig = function(options) { configPath = options.configPath; - return RSVP.resolve({ scenarios: [ { name: 'foo' }]}); + return RSVP.resolve({ scenarios: [{ name: 'foo' }] }); }; TryOneCommand.run({ configPath: 'foo/bar/widget.js' }, ['foo']); @@ -83,13 +83,13 @@ function testCommandSetsTheseAsCommandArgs(command, expectedArgs) { }; TryOneCommand._TryEachTask = MockTask; TryOneCommand._commandLineArguments = function() { - return [].concat([ '/usr/local/Cellar/node/5.3.0/bin/node', - '/usr/local/bin/ember'], + return [].concat(['/usr/local/Cellar/node/5.3.0/bin/node', + '/usr/local/bin/ember'], additionalArgs); }; TryOneCommand._getConfig = function() { - return RSVP.resolve({ scenarios: [ { name: 'default' }]}); + return RSVP.resolve({ scenarios: [{ name: 'default' }] }); }; TryOneCommand.run({}, ['default']); diff --git a/test/commands/try-test.js b/test/commands/try-test.js index bb085f1d..7e8ee70a 100644 --- a/test/commands/try-test.js +++ b/test/commands/try-test.js @@ -1,11 +1,11 @@ 'use strict'; -var expect = require('chai').expect; -var RSVP = require('rsvp'); -var TryCommand = require('../../lib/commands/try'); +var expect = require('chai').expect; +var RSVP = require('rsvp'); +var TryCommand = require('../../lib/commands/try'); var origTryEachTask = TryCommand._TryEachTask; -var origGetConfig = TryCommand._getConfig; +var origGetConfig = TryCommand._getConfig; describe('commands/try', function() { describe('getCommand', function() { @@ -44,7 +44,7 @@ describe('commands/try', function() { beforeEach(function() { TryCommand._getConfig = function() { - return RSVP.resolve(mockConfig || { scenarios: [ ] }); + return RSVP.resolve(mockConfig || { scenarios: [] }); }; TryCommand.ui = { writeDeprecateLine: function() {} }; @@ -69,7 +69,7 @@ describe('commands/try', function() { TryCommand._getConfig = function(options) { configPath = options.configPath; - return RSVP.resolve({ scenarios: [ { name: 'foo' }]}); + return RSVP.resolve({ scenarios: [{ name: 'foo' }] }); }; TryCommand.run({ configPath: 'foo/bar/widget.js' }, ['foo']); @@ -101,13 +101,13 @@ function testCommandSetsTheseAsCommandArgs(command, expectedArgs) { }; TryCommand._TryEachTask = MockTask; TryCommand._commandLineArguments = function() { - return [].concat([ '/usr/local/Cellar/node/5.3.0/bin/node', - '/usr/local/bin/ember'], + return [].concat(['/usr/local/Cellar/node/5.3.0/bin/node', + '/usr/local/bin/ember'], additionalArgs); }; TryCommand._getConfig = function() { - return RSVP.resolve({ scenarios: [ { name: 'default' }]}); + return RSVP.resolve({ scenarios: [{ name: 'default' }] }); }; TryCommand.run({}, ['default']); diff --git a/test/dependency-manager-adapters/bower-adapter-test.js b/test/dependency-manager-adapters/bower-adapter-test.js index f1847770..f9aaee10 100644 --- a/test/dependency-manager-adapters/bower-adapter-test.js +++ b/test/dependency-manager-adapters/bower-adapter-test.js @@ -1,17 +1,17 @@ 'use strict'; -var expect = require('chai').expect; -var RSVP = require('rsvp'); -var fs = require('fs-extra'); -var path = require('path'); -var tmp = require('tmp-sync'); -var fixtureBower = require('../fixtures/bower.json'); -var BowerAdapter = require('../../lib/dependency-manager-adapters/bower'); +var expect = require('chai').expect; +var RSVP = require('rsvp'); +var fs = require('fs-extra'); +var path = require('path'); +var tmp = require('tmp-sync'); +var fixtureBower = require('../fixtures/bower.json'); +var BowerAdapter = require('../../lib/dependency-manager-adapters/bower'); var writeJSONFile = require('../helpers/write-json-file'); -var remove = RSVP.denodeify(fs.remove); -var stat = RSVP.denodeify(fs.stat); -var root = process.cwd(); +var remove = RSVP.denodeify(fs.remove); +var stat = RSVP.denodeify(fs.stat); +var root = process.cwd(); var tmproot = path.join(root, 'tmp'); var tmpdir; @@ -28,14 +28,14 @@ describe('bowerAdapter', function() { describe('#setup', function() { it('backs up the bower file', function() { - writeJSONFile('bower.json', {originalBowerJSON: true}); - return new BowerAdapter({cwd: tmpdir}).setup().then(function() { - assertFileContainsJSON('bower.json.ember-try', {originalBowerJSON: true}); + writeJSONFile('bower.json', { originalBowerJSON: true }); + return new BowerAdapter({ cwd: tmpdir }).setup().then(function() { + assertFileContainsJSON('bower.json.ember-try', { originalBowerJSON: true }); }); }); it('does not error if no bower.json', function() { - return new BowerAdapter({cwd: tmpdir}).setup().catch(function() { + return new BowerAdapter({ cwd: tmpdir }).setup().catch(function() { expect(true).to.eql(false); }); }); @@ -55,7 +55,7 @@ describe('bowerAdapter', function() { ember: 'beta' } }; - var results = new BowerAdapter({cwd: tmpdir})._getDependencySetAccountingForDeprecatedTopLevelKeys(scenarioDepSet); + var results = new BowerAdapter({ cwd: tmpdir })._getDependencySetAccountingForDeprecatedTopLevelKeys(scenarioDepSet); expect(results).to.eql(scenarioDepSet); }); @@ -83,7 +83,7 @@ describe('bowerAdapter', function() { } }; - var results = new BowerAdapter({cwd: tmpdir})._getDependencySetAccountingForDeprecatedTopLevelKeys(scenarioDepSet); + var results = new BowerAdapter({ cwd: tmpdir })._getDependencySetAccountingForDeprecatedTopLevelKeys(scenarioDepSet); expect(results).to.eql(scenarioDepSet.bower); }); }); @@ -98,8 +98,8 @@ describe('bowerAdapter', function() { fs.mkdirSync('bower_components'); writeJSONFile('bower.json', fixtureBower); - writeJSONFile('bower_components/this-should-be-obliterated.json', {removed: false}); - return new BowerAdapter({cwd: tmpdir, run: stubbedRun})._install().then(function() { + writeJSONFile('bower_components/this-should-be-obliterated.json', { removed: false }); + return new BowerAdapter({ cwd: tmpdir, run: stubbedRun })._install().then(function() { return stat('bower_components/this-should-be-obliterated.json').then(function() { expect(true).to.equal(false); }, function(err) { @@ -118,7 +118,7 @@ describe('bowerAdapter', function() { expect(opts).to.have.property('cwd', tmpdir); return RSVP.resolve(); }; - return new BowerAdapter({cwd: tmpdir, run: stubbedRun})._install(); + return new BowerAdapter({ cwd: tmpdir, run: stubbedRun })._install(); }); it('runs bower install including managerOptions', function() { @@ -132,16 +132,16 @@ describe('bowerAdapter', function() { expect(args[4]).to.equal('--allow-root=true'); return RSVP.resolve(); }; - return new BowerAdapter({cwd: tmpdir, run: stubbedRun, managerOptions: ['--verbose=true', '--allow-root=true']})._install(); + return new BowerAdapter({ cwd: tmpdir, run: stubbedRun, managerOptions: ['--verbose=true', '--allow-root=true'] })._install(); }); }); describe('#_restoreOriginalBowerFile', function() { it('replaces the bower.json with the backed up version', function() { - writeJSONFile('bower.json.ember-try', {originalBowerJSON: true}); - writeJSONFile('bower.json', {originalBowerJSON: false}); - return new BowerAdapter({cwd: tmpdir})._restoreOriginalBowerFile().then(function() { - assertFileContainsJSON('bower.json', {originalBowerJSON: true}); + writeJSONFile('bower.json.ember-try', { originalBowerJSON: true }); + writeJSONFile('bower.json', { originalBowerJSON: false }); + return new BowerAdapter({ cwd: tmpdir })._restoreOriginalBowerFile().then(function() { + assertFileContainsJSON('bower.json', { originalBowerJSON: true }); }); }); }); @@ -149,11 +149,11 @@ describe('bowerAdapter', function() { describe('#_writeBowerFileWithDepSetChanges', function() { it('writes bower.json with dep set changes', function() { var bowerJSON = { dependencies: { jquery: '1.11.1' }, resolutions: {} }; - var depSet = { dependencies: { jquery: '2.1.3' } }; + var depSet = { dependencies: { jquery: '2.1.3' } }; writeJSONFile('bower.json', bowerJSON); writeJSONFile('bower.json.ember-try', bowerJSON); - new BowerAdapter({cwd: tmpdir})._writeBowerFileWithDepSetChanges(depSet); + new BowerAdapter({ cwd: tmpdir })._writeBowerFileWithDepSetChanges(depSet); assertFileContainsJSON('bower.json', { dependencies: { jquery: '2.1.3' @@ -165,9 +165,9 @@ describe('bowerAdapter', function() { }); it('writes bower.json with dep set changes even if no original bower.json', function() { - var depSet = { dependencies: { jquery: '2.1.3' } }; + var depSet = { dependencies: { jquery: '2.1.3' } }; - new BowerAdapter({cwd: tmpdir})._writeBowerFileWithDepSetChanges(depSet); + new BowerAdapter({ cwd: tmpdir })._writeBowerFileWithDepSetChanges(depSet); assertFileContainsJSON('bower.json', { name: 'ember-try-placeholder', dependencies: { @@ -182,9 +182,9 @@ describe('bowerAdapter', function() { describe('#_bowerJSONForDependencySet', function() { it('changes specified bower dependency versions', function() { - var bowerAdapter = new BowerAdapter({cwd: tmpdir}); + var bowerAdapter = new BowerAdapter({ cwd: tmpdir }); var bowerJSON = { dependencies: { jquery: '1.11.1' }, resolutions: {} }; - var depSet = { dependencies: { jquery: '2.1.3' } }; + var depSet = { dependencies: { jquery: '2.1.3' } }; var resultJSON = bowerAdapter._bowerJSONForDependencySet(bowerJSON, depSet); @@ -192,9 +192,9 @@ describe('bowerAdapter', function() { }); it('changes specified bower dev dependency versions', function() { - var bowerAdapter = new BowerAdapter({cwd: tmpdir}); + var bowerAdapter = new BowerAdapter({ cwd: tmpdir }); var bowerJSON = { devDependencies: { jquery: '1.11.1' }, resolutions: {} }; - var depSet = { devDependencies: { jquery: '2.1.3' } }; + var depSet = { devDependencies: { jquery: '2.1.3' } }; var resultJSON = bowerAdapter._bowerJSONForDependencySet(bowerJSON, depSet); @@ -202,9 +202,9 @@ describe('bowerAdapter', function() { }); it('adds to resolutions', function() { - var bowerAdapter = new BowerAdapter({cwd: tmpdir}); + var bowerAdapter = new BowerAdapter({ cwd: tmpdir }); var bowerJSON = { dependencies: { jquery: '1.11.1' }, resolutions: {} }; - var depSet = { dependencies: { jquery: '2.1.3' } }; + var depSet = { dependencies: { jquery: '2.1.3' } }; var resultJSON = bowerAdapter._bowerJSONForDependencySet(bowerJSON, depSet); @@ -212,11 +212,11 @@ describe('bowerAdapter', function() { }); it('sets custom resolutions', function() { - var bowerAdapter = new BowerAdapter({cwd: tmpdir}); + var bowerAdapter = new BowerAdapter({ cwd: tmpdir }); var bowerJSON = { dependencies: { ember: '1.13.5' }, resolutions: {} }; - var depSet = { + var depSet = { dependencies: { ember: 'components/ember#canary' }, - resolutions: { ember: 'canary' } + resolutions: { ember: 'canary' } }; var resultJSON = bowerAdapter._bowerJSONForDependencySet(bowerJSON, depSet); @@ -225,9 +225,9 @@ describe('bowerAdapter', function() { }); it('handles lack of resolutions in original bower.json', function() { - var bowerAdapter = new BowerAdapter({cwd: tmpdir}); + var bowerAdapter = new BowerAdapter({ cwd: tmpdir }); var bowerJSON = { dependencies: { jquery: '1.11.1' } }; - var depSet = { dependencies: { jquery: '2.1.3' } }; + var depSet = { dependencies: { jquery: '2.1.3' } }; var resultJSON = bowerAdapter._bowerJSONForDependencySet(bowerJSON, depSet); @@ -235,7 +235,7 @@ describe('bowerAdapter', function() { }); it('can remove a package', function() { - var bowerAdapter = new BowerAdapter({cwd: tmpdir}); + var bowerAdapter = new BowerAdapter({ cwd: tmpdir }); var bowerJSON = { dependencies: { jquery: '1.11.1' }, resolutions: { jquery: '1.11.1' } }; var depSet = { dependencies: { jquery: null } }; @@ -248,7 +248,7 @@ describe('bowerAdapter', function() { describe('#_findBowerPath()', function() { it('returns the correct bower path', function() { - return new BowerAdapter({cwd: tmpdir})._findBowerPath().then(function(path) { + return new BowerAdapter({ cwd: tmpdir })._findBowerPath().then(function(path) { expect(path).to.include('node_modules/bower/bin/bower'); }); }); @@ -261,7 +261,7 @@ describe('bowerAdapter', function() { var stubbedInstallBower = function() { installCount++; }; - return new BowerAdapter({cwd: tmpdir, _installBower: stubbedInstallBower, _resolveModule: stubbedResolveModule})._findBowerPath().then(function(path) { + return new BowerAdapter({ cwd: tmpdir, _installBower: stubbedInstallBower, _resolveModule: stubbedResolveModule })._findBowerPath().then(function(path) { expect(path).to.include('blip/bloop/foo/bin/bower'); expect(installCount).to.equal(0); }); @@ -284,7 +284,7 @@ describe('bowerAdapter', function() { installCount++; }; - return new BowerAdapter({cwd: tmpdir, _installBower: stubbedInstallBower, _resolveModule: stubbedResolveModule})._findBowerPath().then(function(path) { + return new BowerAdapter({ cwd: tmpdir, _installBower: stubbedInstallBower, _resolveModule: stubbedResolveModule })._findBowerPath().then(function(path) { expect(path).to.include('flip/flop/gloop/bin/bower'); expect(installCount).to.equal(1); }); @@ -300,7 +300,7 @@ describe('bowerAdapter', function() { opts = o; return RSVP.resolve(); }; - return new BowerAdapter({cwd: tmpdir, run: stubbedRun})._installBower().then(function() { + return new BowerAdapter({ cwd: tmpdir, run: stubbedRun })._installBower().then(function() { expect(command).to.equal('npm'); expect(args[0]).to.equal('install'); expect(args[1]).to.equal('bower@^1.3.12'); diff --git a/test/dependency-manager-adapters/npm-adapter-test.js b/test/dependency-manager-adapters/npm-adapter-test.js index 77cafca7..4874a9df 100644 --- a/test/dependency-manager-adapters/npm-adapter-test.js +++ b/test/dependency-manager-adapters/npm-adapter-test.js @@ -1,17 +1,17 @@ 'use strict'; -var expect = require('chai').expect; -var RSVP = require('rsvp'); -var fs = require('fs-extra'); -var path = require('path'); -var tmp = require('tmp-sync'); -var fixturePackage = require('../fixtures/package.json'); -var NpmAdapter = require('../../lib/dependency-manager-adapters/npm'); -var writeJSONFile = require('../helpers/write-json-file'); +var expect = require('chai').expect; +var RSVP = require('rsvp'); +var fs = require('fs-extra'); +var path = require('path'); +var tmp = require('tmp-sync'); +var fixturePackage = require('../fixtures/package.json'); +var NpmAdapter = require('../../lib/dependency-manager-adapters/npm'); +var writeJSONFile = require('../helpers/write-json-file'); var generateMockRun = require('../helpers/generate-mock-run'); -var remove = RSVP.denodeify(fs.remove); -var root = process.cwd(); +var remove = RSVP.denodeify(fs.remove); +var root = process.cwd(); var tmproot = path.join(root, 'tmp'); var tmpdir; @@ -29,11 +29,11 @@ describe('npmAdapter', function() { describe('#setup', function() { it('backs up the package.json file and node_modules', function() { fs.mkdirSync('node_modules'); - writeJSONFile('node_modules/prove-it.json', {originalNodeModules: true}); - writeJSONFile('package.json', {originalPackageJSON: true}); - return new NpmAdapter({cwd: tmpdir}).setup().then(function() { - assertFileContainsJSON('package.json.ember-try', {originalPackageJSON: true}); - assertFileContainsJSON('.node_modules.ember-try/prove-it.json', {originalNodeModules: true}); + writeJSONFile('node_modules/prove-it.json', { originalNodeModules: true }); + writeJSONFile('package.json', { originalPackageJSON: true }); + return new NpmAdapter({ cwd: tmpdir }).setup().then(function() { + assertFileContainsJSON('package.json.ember-try', { originalPackageJSON: true }); + assertFileContainsJSON('.node_modules.ember-try/prove-it.json', { originalNodeModules: true }); }).catch(function(err) { console.log(err); expect(true).to.equal(false, 'Error should not happen'); @@ -61,7 +61,7 @@ describe('npmAdapter', function() { } }], { allowPassthrough: false }); - return new NpmAdapter({cwd: tmpdir, run: stubbedRun})._install().then(function() { + return new NpmAdapter({ cwd: tmpdir, run: stubbedRun })._install().then(function() { expect(runCount).to.equal(2, 'Both commands should run'); }).catch(function(err) { console.log(err); @@ -86,7 +86,7 @@ describe('npmAdapter', function() { } }], { allowPassthrough: false }); - return new NpmAdapter({cwd: tmpdir, run: stubbedRun, managerOptions: ['--no-shrinkwrap=true']})._install().then(function() { + return new NpmAdapter({ cwd: tmpdir, run: stubbedRun, managerOptions: ['--no-shrinkwrap=true'] })._install().then(function() { expect(runCount).to.equal(2, 'Both commands should run'); }).catch(function(err) { console.log(err); @@ -97,13 +97,13 @@ describe('npmAdapter', function() { describe('#_restoreOriginalDependencies', function() { it('replaces the package.json with the backed up version', function() { - writeJSONFile('package.json.ember-try', {originalPackageJSON: true}); - writeJSONFile('package.json', {originalPackageJSON: false}); + writeJSONFile('package.json.ember-try', { originalPackageJSON: true }); + writeJSONFile('package.json', { originalPackageJSON: false }); fs.mkdirSync('.node_modules.ember-try'); - writeJSONFile('.node_modules.ember-try/prove-it.json', {originalNodeModules: true}); - return new NpmAdapter({cwd: tmpdir})._restoreOriginalDependencies().then(function() { - assertFileContainsJSON('package.json', {originalPackageJSON: true}); - assertFileContainsJSON('node_modules/prove-it.json', {originalNodeModules: true}); + writeJSONFile('.node_modules.ember-try/prove-it.json', { originalNodeModules: true }); + return new NpmAdapter({ cwd: tmpdir })._restoreOriginalDependencies().then(function() { + assertFileContainsJSON('package.json', { originalPackageJSON: true }); + assertFileContainsJSON('node_modules/prove-it.json', { originalNodeModules: true }); }).catch(function(err) { console.log(err); expect(true).to.equal(false, 'Error should not happen'); @@ -113,8 +113,8 @@ describe('npmAdapter', function() { describe('#_packageJSONForDependencySet', function() { it('changes specified dependency versions', function() { - var npmAdapter = new NpmAdapter({cwd: tmpdir}); - var packageJSON = { devDependencies: { 'ember-feature-flags': '1.0.0' }, dependencies: { 'ember-cli-babel': '5.0.0'} }; + var npmAdapter = new NpmAdapter({ cwd: tmpdir }); + var packageJSON = { devDependencies: { 'ember-feature-flags': '1.0.0' }, dependencies: { 'ember-cli-babel': '5.0.0' } }; var depSet = { dependencies: { 'ember-cli-babel': '6.0.0' } }; var resultJSON = npmAdapter._packageJSONForDependencySet(packageJSON, depSet); @@ -123,8 +123,8 @@ describe('npmAdapter', function() { }); it('changes specified npm dev dependency versions', function() { - var npmAdapter = new NpmAdapter({cwd: tmpdir}); - var packageJSON = { devDependencies: { 'ember-feature-flags': '1.0.0' }, dependencies: { 'ember-cli-babel': '5.0.0'} }; + var npmAdapter = new NpmAdapter({ cwd: tmpdir }); + var packageJSON = { devDependencies: { 'ember-feature-flags': '1.0.0' }, dependencies: { 'ember-cli-babel': '5.0.0' } }; var depSet = { devDependencies: { 'ember-feature-flags': '2.0.1' } }; var resultJSON = npmAdapter._packageJSONForDependencySet(packageJSON, depSet); @@ -133,7 +133,7 @@ describe('npmAdapter', function() { }); it('changes specified npm peer dependency versions', function() { - var npmAdapter = new NpmAdapter({cwd: tmpdir}); + var npmAdapter = new NpmAdapter({ cwd: tmpdir }); var packageJSON = { peerDependencies: { 'ember-cli-babel': '5.0.0' } }; var depSet = { peerDependencies: { 'ember-cli-babel': '4.0.0' } }; @@ -143,7 +143,7 @@ describe('npmAdapter', function() { }); it('can remove a package', function() { - var npmAdapter = new NpmAdapter({cwd: tmpdir}); + var npmAdapter = new NpmAdapter({ cwd: tmpdir }); var packageJSON = { devDependencies: { 'ember-feature-flags': '1.0.0' } }; var depSet = { devDependencies: { 'ember-feature-flags': null } }; diff --git a/test/helpers/generate-mock-run.js b/test/helpers/generate-mock-run.js index 55cf5b75..cb61b2bc 100644 --- a/test/helpers/generate-mock-run.js +++ b/test/helpers/generate-mock-run.js @@ -20,12 +20,10 @@ module.exports = function generateMockRun() { if (matchingRun) { return matchingRun.callback(actualCommand, actualArgs, opts); + } else if (options.allowPassthrough) { + return passthrough().apply(this, arguments); } else { - if (options.allowPassthrough) { - return passthrough().apply(this, arguments); - } else { - throw new Error(actualCommand + ' ' + actualArgs.join(' ') + ' not stubbed and not allowed to passthrough'); - } + throw new Error(actualCommand + ' ' + actualArgs.join(' ') + ' not stubbed and not allowed to passthrough'); } }; }; diff --git a/test/helpers/stub-dependency-manager-adapter.js b/test/helpers/stub-dependency-manager-adapter.js index 012cc33e..959eefc8 100644 --- a/test/helpers/stub-dependency-manager-adapter.js +++ b/test/helpers/stub-dependency-manager-adapter.js @@ -1,7 +1,7 @@ 'use strict'; -var CoreObject = require('core-object'); -var RSVP = require('rsvp'); +var CoreObject = require('core-object'); +var RSVP = require('rsvp'); module.exports = CoreObject.extend({ setup: function() { diff --git a/test/tasks/reset-test.js b/test/tasks/reset-test.js index 5fe9b943..99e6ec21 100644 --- a/test/tasks/reset-test.js +++ b/test/tasks/reset-test.js @@ -1,14 +1,14 @@ 'use strict'; -var tmp = require('tmp-sync'); -var path = require('path'); -var RSVP = require('rsvp'); -var fs = require('fs-extra'); -var fixtureBower = require('../fixtures/bower.json'); +var tmp = require('tmp-sync'); +var path = require('path'); +var RSVP = require('rsvp'); +var fs = require('fs-extra'); +var fixtureBower = require('../fixtures/bower.json'); var writeJSONFile = require('../helpers/write-json-file'); -var remove = RSVP.denodeify(fs.remove); -var root = process.cwd(); +var remove = RSVP.denodeify(fs.remove); +var root = process.cwd(); var tmproot = path.join(root, 'tmp'); var tmpdir; @@ -36,7 +36,7 @@ describe('reset', function() { var ResetTask = require('../../lib/tasks/reset'); var resetTask = new ResetTask({ - project: {root: tmpdir}, + project: { root: tmpdir }, config: config }); diff --git a/test/tasks/try-each-test.js b/test/tasks/try-each-test.js index adc807c4..58631451 100644 --- a/test/tasks/try-each-test.js +++ b/test/tasks/try-each-test.js @@ -1,21 +1,21 @@ 'use strict'; -var expect = require('chai').expect; -var tmp = require('tmp-sync'); -var path = require('path'); -var RSVP = require('rsvp'); -var fs = require('fs-extra'); -var fixtureBower = require('../fixtures/bower.json'); -var fixturePackage = require('../fixtures/package.json'); -var writeJSONFile = require('../helpers/write-json-file'); -var mockery = require('mockery'); +var expect = require('chai').expect; +var tmp = require('tmp-sync'); +var path = require('path'); +var RSVP = require('rsvp'); +var fs = require('fs-extra'); +var fixtureBower = require('../fixtures/bower.json'); +var fixturePackage = require('../fixtures/package.json'); +var writeJSONFile = require('../helpers/write-json-file'); +var mockery = require('mockery'); /* Some of the tests in this file intentionally DO NOT stub dependency manager adapter*/ var StubDependencyAdapter = require('../helpers/stub-dependency-manager-adapter'); -var generateMockRun = require('../helpers/generate-mock-run'); +var generateMockRun = require('../helpers/generate-mock-run'); -var remove = RSVP.denodeify(fs.remove); -var root = process.cwd(); +var remove = RSVP.denodeify(fs.remove); +var root = process.cwd(); var tmproot = path.join(root, 'tmp'); var tmpdir; @@ -141,8 +141,8 @@ describe('tryEach', function() { var TryEachTask = require('../../lib/tasks/try-each'); var tryEachTask = new TryEachTask({ - ui: {writeLine: outputFn}, - project: {root: tmpdir}, + ui: { writeLine: outputFn }, + project: { root: tmpdir }, config: legacyConfig, _on: function() {} }); @@ -185,8 +185,8 @@ describe('tryEach', function() { var TryEachTask = require('../../lib/tasks/try-each'); var tryEachTask = new TryEachTask({ - ui: {writeLine: outputFn}, - project: {root: tmpdir}, + ui: { writeLine: outputFn }, + project: { root: tmpdir }, config: legacyConfig, _on: function() {} }); @@ -225,8 +225,8 @@ describe('tryEach', function() { var TryEachTask = require('../../lib/tasks/try-each'); var tryEachTask = new TryEachTask({ - ui: {writeLine: outputFn}, - project: {root: tmpdir}, + ui: { writeLine: outputFn }, + project: { root: tmpdir }, config: legacyConfig, _on: function() {} }); @@ -257,8 +257,8 @@ describe('tryEach', function() { var TryEachTask = require('../../lib/tasks/try-each'); var tryEachTask = new TryEachTask({ - ui: {writeLine: outputFn}, - project: {root: tmpdir}, + ui: { writeLine: outputFn }, + project: { root: tmpdir }, config: config, _on: function() {} }); @@ -301,8 +301,8 @@ describe('tryEach', function() { var TryEachTask = require('../../lib/tasks/try-each'); var tryEachTask = new TryEachTask({ - ui: {writeLine: outputFn}, - project: {root: tmpdir}, + ui: { writeLine: outputFn }, + project: { root: tmpdir }, config: config, _on: function() {} }); @@ -356,11 +356,11 @@ describe('tryEach', function() { var TryEachTask = require('../../lib/tasks/try-each'); var tryEachTask = new TryEachTask({ - ui: {writeLine: outputFn}, - project: {root: tmpdir}, + ui: { writeLine: outputFn }, + project: { root: tmpdir }, config: config, commandArgs: ['ember', 'serve'], - commandOptions: { timeout: { length: 20000, isSuccess: true }}, + commandOptions: { timeout: { length: 20000, isSuccess: true } }, dependencyManagerAdapters: [new StubDependencyAdapter()], _on: function() {} }); @@ -388,7 +388,7 @@ describe('tryEach', function() { dependencies: { ember: '1.13.0' } - },{ + }, { name: 'second', allowedToFail: true, dependencies: { @@ -409,8 +409,8 @@ describe('tryEach', function() { var TryEachTask = require('../../lib/tasks/try-each'); var tryEachTask = new TryEachTask({ - ui: {writeLine: outputFn}, - project: {root: tmpdir}, + ui: { writeLine: outputFn }, + project: { root: tmpdir }, config: config, dependencyManagerAdapters: [new StubDependencyAdapter()], _on: function() {} @@ -437,7 +437,7 @@ describe('tryEach', function() { dependencies: { ember: '1.13.0' } - },{ + }, { name: 'second', allowedToFail: true, dependencies: { @@ -458,8 +458,8 @@ describe('tryEach', function() { var TryEachTask = require('../../lib/tasks/try-each'); var tryEachTask = new TryEachTask({ - ui: {writeLine: outputFn}, - project: {root: tmpdir}, + ui: { writeLine: outputFn }, + project: { root: tmpdir }, config: config, dependencyManagerAdapters: [new StubDependencyAdapter()], _on: function() {} @@ -487,7 +487,7 @@ describe('tryEach', function() { dependencies: { ember: '1.13.0' } - },{ + }, { name: 'second', allowedToFail: true, dependencies: { @@ -508,8 +508,8 @@ describe('tryEach', function() { var TryEachTask = require('../../lib/tasks/try-each'); var tryEachTask = new TryEachTask({ - ui: {writeLine: outputFn}, - project: {root: tmpdir}, + ui: { writeLine: outputFn }, + project: { root: tmpdir }, config: config, dependencyManagerAdapters: [new StubDependencyAdapter()], _on: function() {} @@ -539,7 +539,7 @@ describe('tryEach', function() { dependencies: { ember: '1.13.0' } - },{ + }, { name: 'second', dependencies: { ember: '2.2.0' @@ -563,8 +563,8 @@ describe('tryEach', function() { var TryEachTask = require('../../lib/tasks/try-each'); var tryEachTask = new TryEachTask({ - ui: {writeLine: outputFn}, - project: {root: tmpdir}, + ui: { writeLine: outputFn }, + project: { root: tmpdir }, config: config, commandArgs: [], dependencyManagerAdapters: [new StubDependencyAdapter()], @@ -609,8 +609,8 @@ describe('tryEach', function() { var TryEachTask = require('../../lib/tasks/try-each'); var tryEachTask = new TryEachTask({ - ui: {writeLine: outputFn}, - project: {root: tmpdir}, + ui: { writeLine: outputFn }, + project: { root: tmpdir }, config: config, commandArgs: ['ember', 'serve'], dependencyManagerAdapters: [new StubDependencyAdapter()], @@ -638,12 +638,12 @@ describe('tryEach', function() { dependencies: { ember: '1.13.0' } - },{ + }, { name: 'second', dependencies: { ember: '2.2.0' } - },{ + }, { name: 'different', command: 'npm run-script different', dependencies: { @@ -660,7 +660,7 @@ describe('tryEach', function() { ranDefaultCommandCount++; return RSVP.resolve(0); } - },{ + }, { command: 'npm run-script different', callback: function() { ranScenarioCommandCount++; @@ -676,8 +676,8 @@ describe('tryEach', function() { var TryEachTask = require('../../lib/tasks/try-each'); var tryEachTask = new TryEachTask({ - ui: {writeLine: outputFn}, - project: {root: tmpdir}, + ui: { writeLine: outputFn }, + project: { root: tmpdir }, config: config, dependencyManagerAdapters: [new StubDependencyAdapter()], _on: function() {} @@ -718,8 +718,8 @@ describe('tryEach', function() { var TryEachTask = require('../../lib/tasks/try-each'); var tryEachTask = new TryEachTask({ - ui: {writeLine: outputFn}, - project: {root: tmpdir}, + ui: { writeLine: outputFn }, + project: { root: tmpdir }, config: config, commandArgs: ['ember', 'help', '--json', 'true'], dependencyManagerAdapters: [new StubDependencyAdapter()], @@ -763,8 +763,8 @@ describe('tryEach', function() { var TryEachTask = require('../../lib/tasks/try-each'); var tryEachTask = new TryEachTask({ - ui: {writeLine: outputFn}, - project: {root: tmpdir}, + ui: { writeLine: outputFn }, + project: { root: tmpdir }, config: config, dependencyManagerAdapters: [new StubDependencyAdapter()], _on: function() {}, diff --git a/test/utils/config-test.js b/test/utils/config-test.js index 3cbf613b..f720d1b2 100644 --- a/test/utils/config-test.js +++ b/test/utils/config-test.js @@ -1,17 +1,17 @@ 'use strict'; -var expect = require('chai').expect; -var RSVP = require('rsvp'); -var fs = require('fs-extra'); -var path = require('path'); -var tmp = require('tmp-sync'); -var fixturePackage = require('../fixtures/package.json'); -var writeJSONFile = require('../helpers/write-json-file'); -var getConfig = require('../../lib/utils/config'); +var expect = require('chai').expect; +var RSVP = require('rsvp'); +var fs = require('fs-extra'); +var path = require('path'); +var tmp = require('tmp-sync'); +var fixturePackage = require('../fixtures/package.json'); +var writeJSONFile = require('../helpers/write-json-file'); +var getConfig = require('../../lib/utils/config'); var defaultConfig = getConfig._defaultConfig; -var remove = RSVP.denodeify(fs.remove); -var root = process.cwd(); +var remove = RSVP.denodeify(fs.remove); +var root = process.cwd(); var tmproot = path.join(root, 'tmp'); var tmpdir; @@ -111,7 +111,7 @@ describe('utils/config', function() { it('is always used if passed in and behaves as if config file has "useVersionCompatibility: true"', function() { generateConfigFile('module.exports = { scenarios: [ { foo: "bar" }] };'); - return getConfig({ project: project, versionCompatibility: { ember: '1.13.0'} }).then(function(config) { + return getConfig({ project: project, versionCompatibility: { ember: '1.13.0' } }).then(function(config) { expect(config).to.eql( { scenarios: [ @@ -127,7 +127,7 @@ describe('utils/config', function() { }); it('can be overridden by passed in versionCompatibility', function() { - return getConfig({ project: project, versionCompatibility: { ember: '1.13.0'} }).then(function(config) { + return getConfig({ project: project, versionCompatibility: { ember: '1.13.0' } }).then(function(config) { expect(config).to.eql( { scenarios: [ @@ -185,6 +185,6 @@ describe('utils/config', function() { }); function writePackageJSONWithVersionCompatibility() { - fixturePackage['ember-addon'] = { versionCompatibility: { ember: '=2.2.0'}}; + fixturePackage['ember-addon'] = { versionCompatibility: { ember: '=2.2.0' } }; writeJSONFile('package.json', fixturePackage); } diff --git a/test/utils/dependency-manager-adapter-factory-test.js b/test/utils/dependency-manager-adapter-factory-test.js index 78b7e664..245e9ba9 100644 --- a/test/utils/dependency-manager-adapter-factory-test.js +++ b/test/utils/dependency-manager-adapter-factory-test.js @@ -1,37 +1,37 @@ 'use strict'; -var expect = require('chai').expect; +var expect = require('chai').expect; var DependencyManagerAdapterFactory = require('../../lib/utils/dependency-manager-adapter-factory'); describe('DependencyManagerAdapterFactory', function() { describe('generateFromConfig', function() { it('creates npm adapter when config has npm key', function() { - var adapters = DependencyManagerAdapterFactory.generateFromConfig({ scenarios: [{ npm: {} }]}, 'here'); + var adapters = DependencyManagerAdapterFactory.generateFromConfig({ scenarios: [{ npm: {} }] }, 'here'); expect(adapters[0].configKey).to.equal('npm'); expect(adapters.length).to.equal(1); }); it('creates bower adapter when config has bower key', function() { - var adapters = DependencyManagerAdapterFactory.generateFromConfig({ scenarios: [{ bower: {} }]}, 'here'); + var adapters = DependencyManagerAdapterFactory.generateFromConfig({ scenarios: [{ bower: {} }] }, 'here'); expect(adapters[0].configKey).to.equal('bower'); expect(adapters.length).to.equal(1); }); it('creates both adapters when it has both keys', function() { - var adapters = DependencyManagerAdapterFactory.generateFromConfig({ scenarios: [{ bower: {}, npm: {}}]}, 'here'); + var adapters = DependencyManagerAdapterFactory.generateFromConfig({ scenarios: [{ bower: {}, npm: {} }] }, 'here'); expect(adapters[0].configKey).to.equal('npm'); expect(adapters[1].configKey).to.equal('bower'); expect(adapters.length).to.equal(2); }); it('creates bower adapter when legacy dependenies key', function() { - var adapters = DependencyManagerAdapterFactory.generateFromConfig({ scenarios: [{ dependencies: {}}]}, 'here'); + var adapters = DependencyManagerAdapterFactory.generateFromConfig({ scenarios: [{ dependencies: {} }] }, 'here'); expect(adapters[0].configKey).to.equal('bower'); expect(adapters.length).to.equal(1); }); it('creates bower adapter when legacy devDependencies key', function() { - var adapters = DependencyManagerAdapterFactory.generateFromConfig({ scenarios: [{ devDependencies: {}}]}, 'here'); + var adapters = DependencyManagerAdapterFactory.generateFromConfig({ scenarios: [{ devDependencies: {} }] }, 'here'); expect(adapters[0].configKey).to.equal('bower'); expect(adapters.length).to.equal(1); }); diff --git a/test/utils/find-ember-path-test.js b/test/utils/find-ember-path-test.js index d4ab78ad..85b4352e 100644 --- a/test/utils/find-ember-path-test.js +++ b/test/utils/find-ember-path-test.js @@ -1,6 +1,6 @@ 'use strict'; -var expect = require('chai').expect; +var expect = require('chai').expect; var findEmberPath = require('../../lib/utils/find-ember-path'); describe('findEmberPath()', function() { diff --git a/test/utils/run-command-test.js b/test/utils/run-command-test.js index 93bdc001..689a9168 100644 --- a/test/utils/run-command-test.js +++ b/test/utils/run-command-test.js @@ -1,8 +1,8 @@ 'use strict'; -var expect = require('chai').expect; -var mockery = require('mockery'); -var RSVP = require('rsvp'); +var expect = require('chai').expect; +var mockery = require('mockery'); +var RSVP = require('rsvp'); describe('utils/run-command', function() { beforeEach(function() { @@ -29,7 +29,7 @@ describe('utils/run-command', function() { mockery.registerMock('./run', mockedRun); - var runCommand = require('../../lib/utils/run-command'); + var runCommand = require('../../lib/utils/run-command'); return runCommand('rootPath', ['ember', 'help', '--json', 'true'], {}).then(function(result) { expect(result).to.equal(true); diff --git a/test/utils/scenario-manager-test.js b/test/utils/scenario-manager-test.js index ae999f6c..21fa8dfb 100644 --- a/test/utils/scenario-manager-test.js +++ b/test/utils/scenario-manager-test.js @@ -1,9 +1,9 @@ 'use strict'; -var expect = require('chai').expect; +var expect = require('chai').expect; var ScenarioManager = require('../../lib/utils/scenario-manager'); -var CoreObject = require('core-object'); -var RSVP = require('rsvp'); +var CoreObject = require('core-object'); +var RSVP = require('rsvp'); describe('scenarioManager', function() { @@ -24,7 +24,7 @@ describe('scenarioManager', function() { }) ]; - return new ScenarioManager({dependencyManagerAdapters: fakeAdapters}).setup().then(function() { + return new ScenarioManager({ dependencyManagerAdapters: fakeAdapters }).setup().then(function() { expect(calledFirstAdapter).to.equal(true); expect(calledSecondAdapter).to.equal(true); }); @@ -46,7 +46,7 @@ describe('scenarioManager', function() { }) ]; - var manager = new ScenarioManager({dependencyManagerAdapters: fakeAdapters}); + var manager = new ScenarioManager({ dependencyManagerAdapters: fakeAdapters }); return manager.changeTo({}).then(function(results) { expect(results).to.eql(['a', 'b', 'r', 'u', 'q', 'a']); }); @@ -70,7 +70,7 @@ describe('scenarioManager', function() { }) ]; - return new ScenarioManager({dependencyManagerAdapters: fakeAdapters}).cleanup().then(function() { + return new ScenarioManager({ dependencyManagerAdapters: fakeAdapters }).cleanup().then(function() { expect(calledFirstAdapter).to.equal(true); expect(calledSecondAdapter).to.equal(true); }); diff --git a/tests/.jshintrc b/tests/.jshintrc deleted file mode 100644 index d2bd1134..00000000 --- a/tests/.jshintrc +++ /dev/null @@ -1,52 +0,0 @@ -{ - "predef": [ - "document", - "window", - "location", - "setTimeout", - "$", - "-Promise", - "define", - "console", - "visit", - "exists", - "fillIn", - "click", - "keyEvent", - "triggerEvent", - "find", - "findWithAssert", - "wait", - "DS", - "andThen", - "currentURL", - "currentPath", - "currentRouteName" - ], - "node": false, - "browser": false, - "boss": true, - "curly": true, - "debug": false, - "devel": false, - "eqeqeq": true, - "evil": true, - "forin": false, - "immed": false, - "laxbreak": false, - "newcap": true, - "noarg": true, - "noempty": false, - "nonew": false, - "nomen": false, - "onevar": false, - "plusplus": false, - "regexp": false, - "undef": true, - "sub": true, - "strict": false, - "white": false, - "eqnull": true, - "esversion": 6, - "unused": true -}