Remove IIFE in all scripts

It is not required by node.js, but introduce troubles while
generating documents with jsdoc3.

Refer to https://github.com/jsdoc3/jsdoc/issues/456

Change-Id: I6664f1be0fc3e86f3a7e3843d557786c37df1c5e
This commit is contained in:
Yujun Zhang 2016-06-29 13:56:17 +08:00
parent 9a7e0c3a6e
commit 5c9e5bbeaf
26 changed files with 2550 additions and 2586 deletions

View File

@ -2,3 +2,5 @@ extends: openstack
env:
node: true
jasmine: true
rules:
strict: ["error", "global"]

View File

@ -14,23 +14,22 @@
* under the License.
*/
(function () {
'use strict';
'use strict';
var yeoman = require('yeoman-generator');
var projectBuilder = require('./lib/project_builder');
var Q = require('q');
var yeoman = require('yeoman-generator');
var projectBuilder = require('./lib/project_builder');
var Q = require('q');
var pkg = require('./lib/component/pkg');
var gerrit = require('./lib/component/gerrit');
var editorconfig = require('./lib/component/editorconfig');
var license = require('./lib/component/license');
var structure = require('./lib/component/structure');
var eslint = require('./lib/component/eslint');
var gitignore = require('./lib/component/gitignore');
var nsp = require('./lib/component/nsp');
var pkg = require('./lib/component/pkg');
var gerrit = require('./lib/component/gerrit');
var editorconfig = require('./lib/component/editorconfig');
var license = require('./lib/component/license');
var structure = require('./lib/component/structure');
var eslint = require('./lib/component/eslint');
var gitignore = require('./lib/component/gitignore');
var nsp = require('./lib/component/nsp');
module.exports = yeoman.Base.extend({
module.exports = yeoman.Base.extend({
constructor: function () {
yeoman.Base.apply(this, arguments);
@ -127,5 +126,4 @@
install: function () {
this.npmInstall();
}
});
})();
});

View File

@ -13,36 +13,33 @@
* License for the specific language governing permissions and limitations
* under the License.
*/
'use strict';
(function () {
'use strict';
var projectBuilder = require('../project_builder');
var projectBuilder = require('../project_builder');
/**
/**
* No-op placeholder method, for handlers we don't need.
*
* @param {generator} generator The currently active generator.
* @returns {generator} The passed generator, for promise chaining.
*/
function noop (generator) {
function noop (generator) {
return generator;
}
}
/**
/**
* Configure the project by adding required files.
*
* @param {generator} generator The currently active generator.
* @returns {generator} The passed generator, for promise chaining.
*/
function configureEC (generator) {
function configureEC (generator) {
projectBuilder.addFile('.editorconfig');
return generator;
}
}
module.exports = {
module.exports = {
init: noop,
prompt: noop,
configure: configureEC
};
})();
};

View File

@ -14,25 +14,24 @@
* under the License.
*/
(function () {
'use strict';
'use strict';
var pkgBuilder = require('../pkg_builder');
var projectBuilder = require('../project_builder');
var yaml = require('js-yaml');
var pkgBuilder = require('../pkg_builder');
var projectBuilder = require('../project_builder');
var yaml = require('js-yaml');
var excludedPaths = [];
var ignoreFile = '.eslintignore';
var rcFile = '.eslintrc';
var eslintrc = {extends: 'openstack'};
var excludedPaths = [];
var ignoreFile = '.eslintignore';
var rcFile = '.eslintrc';
var eslintrc = {extends: 'openstack'};
/**
/**
* This method configures the package builder with all options necessary to support eslint.
*
* @param {generator} generator The currently active generator.
* @returns {generator} The passed generator, for promise chaining.
*/
function promptEslint (generator) {
function promptEslint (generator) {
// At this time, we don't actually need to prompt the user.
// Add the dependencies.
@ -40,16 +39,16 @@
pkgBuilder.addCommand('lint', 'eslint ./');
return generator;
}
}
/**
/**
* Read the existing .eslintrc and .eslintignore files, and populate our initial configuration
* with them.
*
* @param {generator} generator The currently active generator.
* @returns {generator} The passed generator, for promise chaining.
*/
function initializeEslint (generator) {
function initializeEslint (generator) {
var fs = generator.fs;
// Re-initialize excluded paths.
@ -75,15 +74,15 @@
}
return generator;
}
}
/**
/**
* Configure the project by adding required files.
*
* @param {generator} generator The currently active generator.
* @returns {generator} The passed generator, for promise chaining.
*/
function configureEslint (generator) {
function configureEslint (generator) {
if (buildEslintIgnore().length === 0) {
projectBuilder.removeFile('.eslintignore');
} else {
@ -92,15 +91,15 @@
projectBuilder.writeFile('.eslintrc', buildEslintRc);
return generator;
}
}
/**
/**
* Generate the content of our .eslintignore file from the configured list of excluded paths,
* as well as any project-level configured ignoreFiles.
*
* @returns {string} The content of the .eslintignore file.
*/
function buildEslintIgnore () {
function buildEslintIgnore () {
var ignoredFiles = projectBuilder.getIgnoredFiles();
ignoredFiles.forEach(function (item) {
if (excludedPaths.indexOf(item) === -1) {
@ -109,20 +108,19 @@
});
return excludedPaths.sort().join('\n');
}
}
/**
/**
* Generate the content of our .eslintrc file from the current configuration.
*
* @returns {string} The content of the .eslintrc file.
*/
function buildEslintRc () {
function buildEslintRc () {
return yaml.safeDump(eslintrc);
}
}
module.exports = {
module.exports = {
init: initializeEslint,
prompt: promptEslint,
configure: configureEslint
};
})();
};

View File

@ -14,36 +14,35 @@
* under the License.
*/
(function() {
'use strict';
'use strict';
var projectBuilder = require('../project_builder');
var pkgBuilder = require('../pkg_builder');
var ini = require('ini');
var Q = require('q');
var projectBuilder = require('../project_builder');
var pkgBuilder = require('../pkg_builder');
var ini = require('ini');
var Q = require('q');
var gerritFile = '.gitreview';
var iniContent;
var gerritFileExists = false;
var gerritFile = '.gitreview';
var iniContent;
var gerritFileExists = false;
/**
/**
* Internal helper method. Returns true if gerrit has been enabled.
*
* @param {String} answers The collection of answers.
* @returns {Function} True if enableGerrit is set, otherwise false.
*/
var gerritEnabled = function(answers) {
var gerritEnabled = function(answers) {
return !!answers.enableGerrit;
};
};
/**
/**
* Initialize the gerrit component of this generator. In this case, we're
* only adding default configuration values.
*
* @param {generator} generator The currently active generator.
* @returns {generator} The passed generator, for promise chaining.
*/
function initializeGerrit (generator) {
function initializeGerrit (generator) {
// Define our defaults
iniContent = {
gerrit: {
@ -53,16 +52,16 @@
}
};
return generator;
}
}
/**
/**
* Initialize the gerrit component of this generator. In this case, we're
* only adding default configuration values.
*
* @param {generator} generator The currently active generator.
* @returns {generator} The passed generator, for promise chaining.
*/
function promptUserOptions (generator) {
function promptUserOptions (generator) {
// Read the existing file and populate it as defaults.
if (generator.fs.exists(gerritFile)) {
@ -116,15 +115,15 @@
deferred.resolve(generator);
}
return deferred.promise;
}
}
/**
/**
* Configure gerrit
*
* @param {generator} generator The currently active generator.
* @returns {generator} The passed generator, for promise chaining.
*/
function configureGerrit (generator) {
function configureGerrit (generator) {
if (gerritFileExists) {
projectBuilder.writeFile(gerritFile, buildGerritFile);
} else {
@ -132,16 +131,14 @@
}
return generator;
}
}
function buildGerritFile () {
function buildGerritFile () {
return ini.stringify(iniContent);
}
}
module.exports = {
module.exports = {
init: initializeGerrit,
prompt: promptUserOptions,
configure: configureGerrit
};
})
();
};

View File

@ -14,31 +14,30 @@
* under the License.
*/
(function () {
'use strict';
'use strict';
var projectBuilder = require('../project_builder');
var projectBuilder = require('../project_builder');
var excludedPaths = {};
var filePath = '.gitignore';
var excludedPaths = {};
var filePath = '.gitignore';
/**
/**
* No-op placeholder method, for handlers we don't need.
*
* @param {generator} generator The currently active generator.
* @returns {generator} The passed generator, for promise chaining.
*/
function noop (generator) {
function noop (generator) {
return generator;
}
}
/**
/**
* Read the existing .gitignore file, and populate our current list of ignores.
*
* @param {generator} generator The currently active generator.
* @returns {generator} The passed generator, for promise chaining.
*/
function initGitignore (generator) {
function initGitignore (generator) {
var fs = generator.fs;
// Reinitialize the ignore map.
@ -60,15 +59,15 @@
}
return generator;
}
}
/**
/**
* Generate the .gitignore file from the data we've imported.
*
* @param {generator} generator The currently active generator.
* @returns {generator} The passed generator, for promise chaining.
*/
function configureGitIgnore (generator) {
function configureGitIgnore (generator) {
var ignoreContent = buildGitignore();
if (ignoreContent.length === 0) {
// Delete the file if there's nothing to ignore.
@ -78,15 +77,15 @@
}
return generator;
}
}
/**
/**
* Generate the content of our .gitignore file from the configured list of excluded paths,
* as well as any project-level configured ignoreFiles.
*
* @returns {string} The content of the .eslintignore file.
*/
function buildGitignore () {
function buildGitignore () {
var ignoredFiles = projectBuilder.getIgnoredFiles();
for (var i = 0; i < ignoredFiles.length; i++) {
if (!excludedPaths.hasOwnProperty(ignoredFiles[i])) {
@ -95,11 +94,10 @@
}
return Object.keys(excludedPaths).sort().join('\n');
}
}
module.exports = {
module.exports = {
init: initGitignore,
prompt: noop,
configure: configureGitIgnore
};
})();
};

View File

@ -14,38 +14,36 @@
* under the License.
*/
(function () {
'use strict';
'use strict';
var projectBuilder = require('../project_builder');
var pkgBuilder = require('../pkg_builder');
var projectBuilder = require('../project_builder');
var pkgBuilder = require('../pkg_builder');
/**
/**
* No-op placeholder method, for handlers we don't need.
*
* @param {generator} generator The currently active generator.
* @returns {generator} The passed generator, for promise chaining.
*/
function noop (generator) {
function noop (generator) {
return generator;
}
}
/**
/**
* Configure the project by adding required files.
*
* @param {generator} generator The currently active generator.
* @returns {generator} The passed generator, for promise chaining.
*/
function configureLicense (generator) {
function configureLicense (generator) {
projectBuilder.addFile('LICENSE');
pkgBuilder.setValues({license: 'Apache-2.0'});
return generator;
}
}
module.exports = {
module.exports = {
init: noop,
prompt: noop,
configure: configureLicense
};
})();
};

View File

@ -19,30 +19,30 @@
* Its job is to identify known vulnerabilities by scanning the projects
* source and dependencies.
*/
(function () {
'use strict';
var projectBuilder = require('../project_builder');
var pkgBuilder = require('../pkg_builder');
'use strict';
/**
var projectBuilder = require('../project_builder');
var pkgBuilder = require('../pkg_builder');
/**
* No-op placeholder method, for handlers we don't need.
*
* @param {generator} generator The currently active generator.
* @returns {generator} The passed generator, for promise chaining.
*/
function noop (generator) {
function noop (generator) {
return generator;
}
}
/**
/**
* This method configures the package builder with all options necessary
* to run nsp.
*
* @param {generator} generator The currently active generator.
* @returns {generator} The passed generator, for promise chaining.
*/
function promptNsp (generator) {
function promptNsp (generator) {
// At this time, we don't actually need to prompt the user.
// Add the dependencies.
@ -50,22 +50,21 @@
pkgBuilder.addCommand('prepublish', 'nsp check');
return generator;
}
}
/**
/**
* Configure the project by adding required files.
*
* @param {generator} generator The currently active generator.
* @returns {generator} The passed generator, for promise chaining.
*/
function configureNsp (generator) {
function configureNsp (generator) {
projectBuilder.addFile('.nsprc');
return generator;
}
}
module.exports = {
module.exports = {
init: noop,
prompt: promptNsp,
configure: configureNsp
};
})();
};

View File

@ -14,24 +14,23 @@
* under the License.
*/
(function () {
'use strict';
'use strict';
var Q = require('q');
var hyphenize = require('hyphenize');
var pkgBuilder = require('../pkg_builder');
var projectBuilder = require('../project_builder');
var Q = require('q');
var hyphenize = require('hyphenize');
var pkgBuilder = require('../pkg_builder');
var projectBuilder = require('../project_builder');
var packagePath = 'package.json';
var packagePath = 'package.json';
/**
/**
* Iterate over needed package components, ensuring that required
* parameters are set.
*
* @param {generator} generator The currently active generator.
* @returns {generator} The passed generator, for promise chaining.
*/
function promptPackage (generator) {
function promptPackage (generator) {
var deferred = Q.defer();
if (!generator.options['non-interactive']) {
@ -72,15 +71,15 @@
}
return deferred.promise;
}
}
/**
/**
* Read any existing package.json file, to set our defaults.
*
* @param {generator} generator The currently active generator.
* @returns {generator} The passed generator, for promise chaining.
*/
function initializePackage (generator) {
function initializePackage (generator) {
var fs = generator.fs;
// Read package.json
@ -102,22 +101,21 @@
pkgBuilder.addDependencies(devDeps, 'devDependencies');
return generator;
}
}
/**
/**
* Configure the project by adding required files.
*
* @param {generator} generator The currently active generator.
* @returns {generator} The passed generator, for promise chaining.
*/
function configurePkg (generator) {
function configurePkg (generator) {
projectBuilder.writeFile('package.json', pkgBuilder.toJSON);
return generator;
}
}
module.exports = {
module.exports = {
init: initializePackage,
prompt: promptPackage,
configure: configurePkg
};
})();
};

View File

@ -20,13 +20,13 @@
* other generators, such as test framework generation, packaging tools,
* and/or configuration files.
*/
(function () {
'use strict';
var Q = require('q');
var projectBuilder = require('../project_builder');
'use strict';
/**
var Q = require('q');
var projectBuilder = require('../project_builder');
/**
* Initialize the component by setting configuration defaults. These, or previously set
* versions, will be accessible immediately, however it's good practice not to access them
* until after the prompting phase, as we cannot guarantee that they will be properly set.
@ -34,7 +34,7 @@
* @param {generator} generator The currently active generator.
* @returns {generator} The passed generator, for promise chaining.
*/
function initialize (generator) {
function initialize (generator) {
// Set our defaults:
generator.config.defaults({
@ -46,15 +46,15 @@
});
return generator;
}
}
/**
/**
* If applicable, prompt the user for a project type.
*
* @param {generator} generator The currently active generator.
* @returns {generator} The passed generator, for promise chaining.
*/
function prompt (generator) {
function prompt (generator) {
var deferred = Q.defer();
// We default to a node.js project.
@ -118,22 +118,21 @@
deferred.resolve(generator);
}
return deferred.promise;
}
}
/**
/**
* Add any output directories to the ignore files.
*
* @param {generator} generator The currently active generator.
* @returns {generator} The passed generator, for promise chaining.
*/
function configure (generator) {
function configure (generator) {
projectBuilder.ignoreFile(generator.config.get('distDir'));
return generator;
}
}
module.exports = {
module.exports = {
init: initialize,
prompt: prompt,
configure: configure
};
})();
};

View File

@ -13,43 +13,42 @@
* License for the specific language governing permissions and limitations
* under the License.
*/
/**
* Access to the global-dependencies.json file.
*/
(function () {
'use strict';
var globalDependencies = require('../../../global-dependencies.json');
'use strict';
/**
var globalDependencies = require('../../../global-dependencies.json');
/**
* Returns whether a dependency is in the global-dependencies list.
*
* @param {String} name The name of the dependency.
* @returns {Boolean} True if the dependency exists, otherwise false.
*/
function containsDependency (name) {
function containsDependency (name) {
return globalDependencies.hasOwnProperty(name);
}
}
/**
/**
* Return the current acceptable version of the dependencies, or null.
*
* @param {String} name The dependency name.
* @returns {String|undefined} The version, or undefined.
*/
function getVersion (name) {
function getVersion (name) {
return globalDependencies[name] || undefined;
}
}
/**
/**
* Given a list of dependencies, updates this list of dependencies to the versions that are
* currently set in global-dependencies.
*
* @param {{}} dependencies The list of dependencies.
* @returns {{}} The above list of dependencies, with only the appropriate versions updated.
*/
function synchronizeDependencies (dependencies) {
function synchronizeDependencies (dependencies) {
var results = {};
for (var key in dependencies) {
if (globalDependencies.hasOwnProperty(key)) {
@ -59,11 +58,10 @@
}
}
return results;
}
}
module.exports = {
module.exports = {
contains: containsDependency,
read: getVersion,
synchronize: synchronizeDependencies
};
})();
};

View File

@ -14,44 +14,43 @@
* under the License.
*/
(function () {
'use strict';
'use strict';
var dependencies = require('./global_dependencies');
var pkgContent = {};
var dependencies = require('./global_dependencies');
var pkgContent = {};
/**
/**
* Convert a package.json formatted list of dependencies and update them to the versions
* listed in our global dependencies.
*
* @param {{}} dependencyMap The map of dependencies.
* @returns {{}} A clone of the map, updated with current common versions.
*/
function synchronizeDependencies (dependencyMap) {
function synchronizeDependencies (dependencyMap) {
if (!dependencyMap) {
return undefined;
}
// Cloning not necessary, handled in dependencies.synchronize();
return dependencies.synchronize(dependencyMap);
}
}
/**
/**
* Initialize this builder from a JSON string.
*
* @param {String} pkgString The package string content.
* @returns {void}
*/
function readPackage (pkgString) {
function readPackage (pkgString) {
pkgContent = JSON.parse(pkgString);
}
}
/**
/**
* Write the package content to a JSON string.
*
* @returns {String} The JSON content of the package, as a string.
*/
function writePackage () {
function writePackage () {
// Clone the package content so we don't destroy what's in memory...
var newContent = JSON.parse(JSON.stringify(pkgContent));
@ -60,16 +59,16 @@
newContent.dependencies = synchronizeDependencies(newContent.dependencies);
newContent.devDependencies = synchronizeDependencies(newContent.devDependencies);
return JSON.stringify(newContent, null, 2);
}
}
/**
/**
* Add libraries to the package dependencies.
*
* @param {[]|String} libraryNames A list of all libraries to add to the dependencies.
* @param {String} type The type of dependency.
* @returns {void}
*/
function addDependencies (libraryNames, type) {
function addDependencies (libraryNames, type) {
// Default the type.
type = type || 'dependencies';
@ -95,33 +94,33 @@
pkgContent[type][library] = version;
}
});
}
}
/**
/**
* Set values on the current package.
*
* @param {{}} values A map of values.
* @returns {void}
*/
function setValues (values) {
function setValues (values) {
for (var key in values) {
// Filter out things from prototype.
if (values.hasOwnProperty(key)) {
pkgContent[key] = values[key];
}
}
}
}
/**
/**
* Get the values of the current package.
*
* @returns {{}} A cloned map of the values.
*/
function getValues () {
function getValues () {
return JSON.parse(JSON.stringify(pkgContent));
}
}
/**
/**
* Get a specific value from the package.json file, or a default if the
* value is not set.
*
@ -129,21 +128,21 @@
* @param {String} defaultValue A default value to return.
* @returns {{}} A clone of the referenced value.
*/
function getValue (name, defaultValue) {
function getValue (name, defaultValue) {
if (pkgContent.hasOwnProperty(name)) {
return JSON.parse(JSON.stringify(pkgContent[name]));
}
return defaultValue || undefined;
}
}
/**
/**
* Create a specific NPM script command, invoked by 'npm run <name>' or 'npm <name>'.
*
* @param {String} name The name of the script.
* @param {String} command The command to invoke.
* @returns {void}
*/
function addCommand (name, command) {
function addCommand (name, command) {
// sanity check, does 'scripts' exist?
if (!pkgContent.hasOwnProperty('scripts')) {
@ -152,9 +151,9 @@
// Save/Override the command.
pkgContent.scripts[name] = command;
}
}
module.exports = {
module.exports = {
fromJSON: readPackage,
toJSON: writePackage,
setValues: setValues,
@ -162,5 +161,4 @@
getValue: getValue,
addDependencies: addDependencies,
addCommand: addCommand
};
})();
};

View File

@ -14,24 +14,23 @@
* under the License.
*/
(function () {
'use strict';
'use strict';
var includedFiles = [];
var excludedFiles = [];
var ignoredFiles = [];
var includedFiles = [];
var excludedFiles = [];
var ignoredFiles = [];
/**
/**
* Ensure that a file is removed, or not present, in the project.
*
* @param {String} destinationPath Path to the file, relative to output root.
* @returns {void}
*/
function removeFile (destinationPath) {
function removeFile (destinationPath) {
excludedFiles.push(destinationPath);
}
}
/**
/**
* Flag a file path as 'ignored'.
*
* This does not have a real impact on which files are created/removed from the bootstrapped
@ -41,71 +40,71 @@
* @param {String} destinationPath Path to the file, relative to output root.
* @returns {void}
*/
function ignoreFile (destinationPath) {
function ignoreFile (destinationPath) {
ignoredFiles.push(destinationPath);
}
}
/**
/**
* Add a file to the project.
*
* @param {String} sourcePath Path to the file, relative to ./templates/
* @param {String} destinationPath Destination path relative to output root.
* @returns {void}
*/
function addFile (sourcePath, destinationPath) {
function addFile (sourcePath, destinationPath) {
includedFiles.push({from: sourcePath, to: destinationPath || sourcePath});
}
}
/**
/**
* Write a file to the project.
*
* @param {String} destinationPath The destination for the file.
* @param {String|Function} content A string of content, or method that returns one.
* @returns {void}
*/
function writeFile (destinationPath, content) {
function writeFile (destinationPath, content) {
includedFiles.push({to: destinationPath, content: content});
}
}
/**
/**
* Get a list of all files that are to be included.
*
* @returns {Array} A list of all file mappings: {from:, to:}
*/
function getIncludedFiles () {
function getIncludedFiles () {
return includedFiles;
}
}
/**
/**
* Get a list of all file paths that should be excluded.
*
* @returns {Array} A list of file paths.
*/
function getExcludedFiles () {
function getExcludedFiles () {
return excludedFiles;
}
}
/**
/**
* Get a list of all file paths that should be ignored.
*
* @returns {Array} A list of file paths.
*/
function getIgnoredFiles () {
function getIgnoredFiles () {
return ignoredFiles;
}
}
/**
/**
* Clear the current configuration.
*
* @returns {void}
*/
function clearAll () {
function clearAll () {
includedFiles = [];
excludedFiles = [];
ignoredFiles = [];
}
}
module.exports = {
module.exports = {
addFile: addFile,
writeFile: writeFile,
removeFile: removeFile,
@ -114,5 +113,4 @@
getIgnoredFiles: getIgnoredFiles,
getExcludedFiles: getExcludedFiles,
clear: clearAll
};
})();
};

View File

@ -14,17 +14,17 @@
* under the License.
*/
(function () {
'use strict';
var path = require('path');
var assert = require('yeoman-assert');
var helpers = require('yeoman-test');
'use strict';
var generator = path.join(__dirname, '../../generators/app');
var modules = ['gerrit', 'license', 'editorconfig'];
var projectBuilder = require('../../generators/app/lib/project_builder');
var path = require('path');
var assert = require('yeoman-assert');
var helpers = require('yeoman-test');
describe('generator-openstack:app', function () {
var generator = path.join(__dirname, '../../generators/app');
var modules = ['gerrit', 'license', 'editorconfig'];
var projectBuilder = require('../../generators/app/lib/project_builder');
describe('generator-openstack:app', function () {
beforeEach(function () {
projectBuilder.clear();
@ -109,5 +109,4 @@
});
});
});
});
})();
});

View File

@ -14,16 +14,16 @@
* under the License.
*/
(function () {
'use strict';
var libDir = '../../../../generators/app/lib';
'use strict';
var editorconfig = require(libDir + '/component/editorconfig');
var projectBuilder = require(libDir + '/project_builder');
var mocks = require('../../../helpers/mocks');
var mockGenerator;
var libDir = '../../../../generators/app/lib';
describe('generator-openstack:lib/component/editorconfig', function () {
var editorconfig = require(libDir + '/component/editorconfig');
var projectBuilder = require(libDir + '/project_builder');
var mocks = require('../../../helpers/mocks');
var mockGenerator;
describe('generator-openstack:lib/component/editorconfig', function () {
beforeEach(function () {
mockGenerator = mocks.buildGenerator();
@ -84,5 +84,4 @@
expect(files[0].to).toBe('.editorconfig');
});
});
});
})();
});

View File

@ -14,19 +14,19 @@
* under the License.
*/
(function () {
'use strict';
var libDir = '../../../../generators/app/lib';
var mockGenerator;
var mockEslintIgnore = ['node_modules', 'bower_components', 'dist'];
'use strict';
var eslint = require(libDir + '/component/eslint');
var pkgBuilder = require(libDir + '/pkg_builder');
var projectBuilder = require(libDir + '/project_builder');
var mocks = require('../../../helpers/mocks');
var yaml = require('js-yaml');
var libDir = '../../../../generators/app/lib';
var mockGenerator;
var mockEslintIgnore = ['node_modules', 'bower_components', 'dist'];
describe('generator-openstack:lib/component/eslint', function () {
var eslint = require(libDir + '/component/eslint');
var pkgBuilder = require(libDir + '/pkg_builder');
var projectBuilder = require(libDir + '/project_builder');
var mocks = require('../../../helpers/mocks');
var yaml = require('js-yaml');
describe('generator-openstack:lib/component/eslint', function () {
beforeEach(function () {
mockGenerator = mocks.buildGenerator();
@ -260,5 +260,4 @@
expect(rmFiles[0]).toBe('.eslintignore');
});
});
});
})();
});

View File

@ -14,32 +14,32 @@
* under the License.
*/
(function () {
'use strict';
var libDir = '../../../../generators/app/lib';
'use strict';
var ini = require('ini');
var libDir = '../../../../generators/app/lib';
var gerrit = require(libDir + '/component/gerrit');
var projectBuilder = require(libDir + '/project_builder');
var pkgBuilder = require(libDir + '/pkg_builder');
var mocks = require('../../../helpers/mocks');
var ini = require('ini');
var iniFile = {
var gerrit = require(libDir + '/component/gerrit');
var projectBuilder = require(libDir + '/project_builder');
var pkgBuilder = require(libDir + '/pkg_builder');
var mocks = require('../../../helpers/mocks');
var iniFile = {
gerrit: {
host: 'review.example.org',
port: '1000',
project: 'openstack/test-project.git'
}
};
};
/**
/**
* Assert that the gerrit file content matches the passed structure.
*
* @param {object} content The expected data structure.
* @returns {void}
*/
function expectGerritFileContent (content) {
function expectGerritFileContent (content) {
var files = projectBuilder.getIncludedFiles();
// get the .gitreview file
@ -53,9 +53,9 @@
// Test the content
expect(gitreview).toBeTruthy();
expect(gitreview).toEqual(content);
}
}
describe('generator-openstack:lib/component/gerrit', function () {
describe('generator-openstack:lib/component/gerrit', function () {
beforeEach(function () {
projectBuilder.clear();
@ -269,5 +269,4 @@
expect(excludedFiles[0]).toBe('.gitreview');
});
});
});
})();
});

View File

@ -14,16 +14,16 @@
* under the License.
*/
(function () {
'use strict';
var libDir = '../../../../generators/app/lib';
'use strict';
var gitignore = require(libDir + '/component/gitignore');
var projectBuilder = require(libDir + '/project_builder');
var mocks = require('../../../helpers/mocks');
var mockGenerator;
var libDir = '../../../../generators/app/lib';
describe('generator-openstack:lib/component/gitignore', function () {
var gitignore = require(libDir + '/component/gitignore');
var projectBuilder = require(libDir + '/project_builder');
var mocks = require('../../../helpers/mocks');
var mockGenerator;
describe('generator-openstack:lib/component/gitignore', function () {
beforeEach(function () {
mockGenerator = mocks.buildGenerator();
@ -219,5 +219,4 @@
expect(rmFiles[0]).toBe('.gitignore');
});
});
});
})();
});

View File

@ -14,17 +14,17 @@
* under the License.
*/
(function () {
'use strict';
var libDir = '../../../../generators/app/lib';
'use strict';
var license = require(libDir + '/component/license');
var projectBuilder = require(libDir + '/project_builder');
var pkgBuilder = require(libDir + '/pkg_builder');
var mocks = require('../../../helpers/mocks');
var mockGenerator;
var libDir = '../../../../generators/app/lib';
describe('generator-openstack:lib/component/license', function () {
var license = require(libDir + '/component/license');
var projectBuilder = require(libDir + '/project_builder');
var pkgBuilder = require(libDir + '/pkg_builder');
var mocks = require('../../../helpers/mocks');
var mockGenerator;
describe('generator-openstack:lib/component/license', function () {
beforeEach(function () {
mockGenerator = mocks.buildGenerator();
@ -93,5 +93,4 @@
expect(parsedResult.license).toBe("Apache-2.0");
});
});
});
})();
});

View File

@ -14,17 +14,17 @@
* under the License.
*/
(function () {
'use strict';
var libDir = '../../../../generators/app/lib';
'use strict';
var nsp = require(libDir + '/component/nsp');
var projectBuilder = require(libDir + '/project_builder');
var pkgBuilder = require(libDir + '/pkg_builder');
var mocks = require('../../../helpers/mocks');
var mockGenerator;
var libDir = '../../../../generators/app/lib';
describe('generator-openstack:lib/component/nsp', function () {
var nsp = require(libDir + '/component/nsp');
var projectBuilder = require(libDir + '/project_builder');
var pkgBuilder = require(libDir + '/pkg_builder');
var mocks = require('../../../helpers/mocks');
var mockGenerator;
describe('generator-openstack:lib/component/nsp', function () {
beforeEach(function () {
mockGenerator = mocks.buildGenerator();
@ -105,5 +105,4 @@
expect(files[0].to).toBe('.nsprc');
});
});
});
})();
});

View File

@ -14,19 +14,19 @@
* under the License.
*/
(function () {
'use strict';
var libDir = '../../../../generators/app/lib';
'use strict';
var pkg = require(libDir + '/component/pkg');
var projectBuilder = require(libDir + '/project_builder');
var pkgBuilder = require(libDir + '/pkg_builder');
var mocks = require('../../../helpers/mocks');
var mockGenerator;
var libDir = '../../../../generators/app/lib';
var packageFile = {};
var pkg = require(libDir + '/component/pkg');
var projectBuilder = require(libDir + '/project_builder');
var pkgBuilder = require(libDir + '/pkg_builder');
var mocks = require('../../../helpers/mocks');
var mockGenerator;
describe('generator-openstack:lib/component/pkg', function () {
var packageFile = {};
describe('generator-openstack:lib/component/pkg', function () {
beforeEach(function () {
mockGenerator = mocks.buildGenerator();
@ -186,5 +186,4 @@
expect(files[0].content).toBe(pkgBuilder.toJSON);
});
});
});
})();
});

View File

@ -14,24 +14,24 @@
* under the License.
*/
(function () {
'use strict';
var libDir = '../../../../generators/app/lib';
'use strict';
var structure = require(libDir + '/component/structure');
var projectBuilder = require(libDir + '/project_builder');
var mocks = require('../../../helpers/mocks');
var mockGenerator;
var libDir = '../../../../generators/app/lib';
var expectedDefaults = {
var structure = require(libDir + '/component/structure');
var projectBuilder = require(libDir + '/project_builder');
var mocks = require('../../../helpers/mocks');
var mockGenerator;
var expectedDefaults = {
engine: 'browser',
language: 'es5',
srcDir: './src',
distDir: './dist',
testDir: './test'
};
};
describe('generator-openstack:lib/component/structure', function () {
describe('generator-openstack:lib/component/structure', function () {
beforeEach(function () {
mockGenerator = mocks.buildGenerator();
@ -178,5 +178,4 @@
expect(ignoreSpy).toHaveBeenCalledWith('./dist');
});
});
});
})();
});

View File

@ -14,13 +14,13 @@
* under the License.
*/
(function () {
'use strict';
var builder = require('../../../generators/app/lib/global_dependencies');
var globals = require('../../../global-dependencies.json');
var semver = require('semver');
'use strict';
describe('lib/global_dependencies', function () {
var builder = require('../../../generators/app/lib/global_dependencies');
var globals = require('../../../global-dependencies.json');
var semver = require('semver');
describe('lib/global_dependencies', function () {
describe('data', function () {
it('should contain all dependencies from the root global-dependencies.json',
@ -91,5 +91,4 @@
expect(newDeps.notarealdependency).toEqual(testDeps.notarealdependency);
});
});
});
})();
});

View File

@ -14,12 +14,12 @@
* under the License.
*/
(function () {
'use strict';
var builder = require('../../../generators/app/lib/pkg_builder');
var dependencies = require('../../../generators/app/lib/global_dependencies');
'use strict';
describe('generator-openstack:lib/pkg_builder', function () {
var builder = require('../../../generators/app/lib/pkg_builder');
var dependencies = require('../../../generators/app/lib/global_dependencies');
describe('generator-openstack:lib/pkg_builder', function () {
beforeEach(function () {
builder.fromJSON("{}"); // Clear
@ -223,5 +223,4 @@
expect(builder.getValue('scripts')).toBeDefined();
});
});
});
})();
});

View File

@ -14,11 +14,11 @@
* under the License.
*/
(function () {
'use strict';
var builder = require('../../../generators/app/lib/project_builder');
'use strict';
describe('generator-openstack:lib/project_builder', function () {
var builder = require('../../../generators/app/lib/project_builder');
describe('generator-openstack:lib/project_builder', function () {
beforeEach(function () {
builder.clear();
@ -70,5 +70,4 @@
builder.ignoreFile(testFilePath);
expect(builder.getIgnoredFiles()[0]).toBe(testFilePath);
});
});
})();
});

View File

@ -14,10 +14,9 @@
* under the License.
*/
(function () {
'use strict';
'use strict';
function buildMockGenerator (config, mockAnswers, mockOptions) {
function buildMockGenerator (config, mockAnswers, mockOptions) {
var configDefaults = {};
var memFs = require('mem-fs');
var editor = require('mem-fs-editor');
@ -72,9 +71,8 @@
},
options: mockOptions
};
}
}
module.exports = {
module.exports = {
buildGenerator: buildMockGenerator
};
})();
};