You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cordova.apache.org by ag...@apache.org on 2015/03/06 05:01:41 UTC
[05/19] ios commit: CB-8435 Enable jshint for iOS platform
CB-8435 Enable jshint for iOS platform
Signed-off-by: Shazron Abdullah <sh...@apache.org>
Project: http://git-wip-us.apache.org/repos/asf/cordova-ios/repo
Commit: http://git-wip-us.apache.org/repos/asf/cordova-ios/commit/f7a88814
Tree: http://git-wip-us.apache.org/repos/asf/cordova-ios/tree/f7a88814
Diff: http://git-wip-us.apache.org/repos/asf/cordova-ios/diff/f7a88814
Branch: refs/heads/4.0.x
Commit: f7a888140951e1952acd40f3ec54d13726f2fae4
Parents: 338ee71
Author: Murat Sutunc <mu...@microsoft.com>
Authored: Thu Feb 5 12:03:37 2015 -0800
Committer: Shazron Abdullah <sh...@apache.org>
Committed: Fri Feb 13 15:39:02 2015 -0800
----------------------------------------------------------------------
.jshintignore | 2 ++
.jshintrc | 10 ++++++
.travis.yml | 5 ++-
bin/lib/create.js | 25 +++++++-------
bin/lib/versions.js | 6 ++--
bin/templates/scripts/cordova/lib/build.js | 34 +++++++++---------
bin/templates/scripts/cordova/lib/clean.js | 2 +-
bin/templates/scripts/cordova/lib/run.js | 46 ++++++++++++-------------
package.json | 9 +++--
tests/.jshintrc | 11 ++++++
tests/spec/cordovalib.spec.js | 2 +-
11 files changed, 91 insertions(+), 61 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/f7a88814/.jshintignore
----------------------------------------------------------------------
diff --git a/.jshintignore b/.jshintignore
new file mode 100644
index 0000000..e87aa4b
--- /dev/null
+++ b/.jshintignore
@@ -0,0 +1,2 @@
+bin/node_modules/*
+bin/templates/project/*
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/f7a88814/.jshintrc
----------------------------------------------------------------------
diff --git a/.jshintrc b/.jshintrc
new file mode 100644
index 0000000..89a121c
--- /dev/null
+++ b/.jshintrc
@@ -0,0 +1,10 @@
+{
+ "node": true
+ , "bitwise": true
+ , "undef": true
+ , "trailing": true
+ , "quotmark": true
+ , "indent": 4
+ , "unused": "vars"
+ , "latedef": "nofunc"
+}
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/f7a88814/.travis.yml
----------------------------------------------------------------------
diff --git a/.travis.yml b/.travis.yml
index 74f77cc..31a8812 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -1,4 +1,7 @@
language: objective-c
sudo: false
-install: npm install
+install:
+- npm install
+- npm install ios-sim
+- npm install ios-deploy
script: "npm test"
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/f7a88814/bin/lib/create.js
----------------------------------------------------------------------
diff --git a/bin/lib/create.js b/bin/lib/create.js
index ec762ac..cbffd63 100755
--- a/bin/lib/create.js
+++ b/bin/lib/create.js
@@ -26,18 +26,18 @@ var shell = require('shelljs'),
ROOT = path.join(__dirname, '..', '..');
function createHelp() {
- console.log("Usage: $0 [--link] [--cli] <path_to_new_project> <package_name> <project_name> [<project_template_dir>]");
- console.log(" --link (optional): Link directly against the shared copy of the CordovaLib instead of a copy of it.");
- console.log(" --cli (optional): Use the CLI-project template.");
- console.log(" <path_to_new_project>: Path to your new Cordova iOS project");
- console.log(" <package_name>: Package name, following reverse-domain style convention");
- console.log(" <project_name>: Project name");
- console.log(" <project_template_dir>: Path to project template (override).");
+ console.log('Usage: $0 [--link] [--cli] <path_to_new_project> <package_name> <project_name> [<project_template_dir>]');
+ console.log(' --link (optional): Link directly against the shared copy of the CordovaLib instead of a copy of it.');
+ console.log(' --cli (optional): Use the CLI-project template.');
+ console.log(' <path_to_new_project>: Path to your new Cordova iOS project');
+ console.log(' <package_name>: Package name, following reverse-domain style convention');
+ console.log(' <project_name>: Project name');
+ console.log(' <project_template_dir>: Path to project template (override).');
}
function updateSubprojectHelp() {
- console.log('Updates the subproject path of the CordovaLib entry to point to this script\'s version of Cordova.')
- console.log("Usage: CordovaVersion/bin/update_cordova_project path/to/your/app.xcodeproj [path/to/CordovaLib.xcodeproj]");
+ console.log('Updates the subproject path of the CordovaLib entry to point to this script\'s version of Cordova.');
+ console.log('Usage: CordovaVersion/bin/update_cordova_project path/to/your/app.xcodeproj [path/to/CordovaLib.xcodeproj]');
}
function setShellFatal(value, func) {
@@ -103,10 +103,10 @@ function detectProjectName(projectDir) {
for (var i = 0; i < files.length; ++i) {
var m = /(.*)\.xcodeproj$/.exec(files[i]);
if (m) {
- return m[1]
+ return m[1];
}
}
- throw new Exception('Could not find an .xcodeproj directory within ' + projectDir);
+ throw new Error('Could not find an .xcodeproj directory within ' + projectDir);
}
function AbsParentPath(_path) {
@@ -146,7 +146,6 @@ exports.createProject = function(project_path, package_name, project_name, opts)
var use_shared = !!opts.link;
var use_cli = !!opts.cli;
var bin_dir = path.join(ROOT, 'bin'),
- cordovalib_dir = path.join(ROOT, 'CordovaLib'),
project_parent = path.dirname(project_path);
var project_template_dir = opts.project_template_dir || path.join(bin_dir, 'templates', 'project');
@@ -205,7 +204,7 @@ exports.createProject = function(project_path, package_name, project_name, opts)
console.log(generateDoneMessage('create', use_shared));
return Q.resolve();
-}
+};
exports.updateProject = function(projectPath, opts) {
var projectName = detectProjectName(projectPath);
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/f7a88814/bin/lib/versions.js
----------------------------------------------------------------------
diff --git a/bin/lib/versions.js b/bin/lib/versions.js
index 78f3ec5..e22e499 100755
--- a/bin/lib/versions.js
+++ b/bin/lib/versions.js
@@ -49,7 +49,7 @@ exports.get_apple_ios_version = function() {
}, function(stderr) {
return Q.reject(stderr);
});
-}
+};
exports.get_apple_osx_version = function() {
var d = Q.defer();
@@ -78,7 +78,7 @@ exports.get_apple_osx_version = function() {
}, function(stderr) {
return Q.reject(stderr);
});
-}
+};
exports.get_apple_xcode_version = function() {
var d = Q.defer();
@@ -158,7 +158,7 @@ exports.compareVersions = function (version1, version2) {
// Number constructor is strict enough and will return NaN
// if conversion fails. In this case we won't be able to compare versions properly
if (isNaN(parsed)) {
- throw "Version should contain only numbers and dots";
+ throw 'Version should contain only numbers and dots';
}
return parsed;
});
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/f7a88814/bin/templates/scripts/cordova/lib/build.js
----------------------------------------------------------------------
diff --git a/bin/templates/scripts/cordova/lib/build.js b/bin/templates/scripts/cordova/lib/build.js
index 02d8113..ff3d625 100644
--- a/bin/templates/scripts/cordova/lib/build.js
+++ b/bin/templates/scripts/cordova/lib/build.js
@@ -51,9 +51,9 @@ module.exports.run = function (argv) {
}).then(function (projectName) {
var configuration = args.release ? 'Release' : 'Debug';
- console.log("Building project : " + path.join(projectPath, projectName + '.xcodeproj'));
- console.log("\tConfiguration : " + configuration);
- console.log("\tPlatform : " + (args.device ? 'device' : 'emulator'));
+ console.log('Building project : ' + path.join(projectPath, projectName + '.xcodeproj'));
+ console.log('\tConfiguration : ' + configuration);
+ console.log('\tPlatform : ' + (args.device ? 'device' : 'emulator'));
var xcodebuildArgs = getXcodeArgs(projectName, projectPath, configuration, args.device);
return spawn('xcodebuild', xcodebuildArgs, projectPath);
@@ -72,7 +72,7 @@ function findXCodeProjectIn(projectPath) {
});
if (xcodeProjFiles.length === 0) {
- return Q.reject("No Xcode project found in " + projectPath);
+ return Q.reject('No Xcode project found in ' + projectPath);
}
if (xcodeProjFiles.length > 1) {
console.warn('Found multiple .xcodeproj directories in \n' +
@@ -127,22 +127,22 @@ function getXcodeArgs(projectName, projectPath, configuration, isDevice) {
// help/usage function
module.exports.help = function help() {
- console.log("");
- console.log("Usage: build [ --debug | --release ] [--archs=\"<list of architectures...>\"] [--device | --simulator]");
- console.log(" --help : Displays this dialog.");
- console.log(" --debug : Builds project in debug mode. (Default)");
- console.log(" --release : Builds project in release mode.");
- console.log(" -r : Shortcut :: builds project in release mode.");
+ console.log('');
+ console.log('Usage: build [ --debug | --release ] [--archs=\"<list of architectures...>\"] [--device | --simulator]');
+ console.log(' --help : Displays this dialog.');
+ console.log(' --debug : Builds project in debug mode. (Default)');
+ console.log(' --release : Builds project in release mode.');
+ console.log(' -r : Shortcut :: builds project in release mode.');
// TODO: add support for building different archs
// console.log(" --archs : Builds project binaries for specific chip architectures (`anycpu`, `arm`, `x86`, `x64`).");
- console.log(" --device, --simulator");
- console.log(" : Specifies, what type of project to build");
- console.log("examples:");
- console.log(" build ");
- console.log(" build --debug");
- console.log(" build --release");
+ console.log(' --device, --simulator');
+ console.log(' : Specifies, what type of project to build');
+ console.log('examples:');
+ console.log(' build ');
+ console.log(' build --debug');
+ console.log(' build --release');
// TODO: add support for building different archs
// console.log(" build --release --archs=\"armv7\"");
- console.log("");
+ console.log('');
process.exit(0);
};
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/f7a88814/bin/templates/scripts/cordova/lib/clean.js
----------------------------------------------------------------------
diff --git a/bin/templates/scripts/cordova/lib/clean.js b/bin/templates/scripts/cordova/lib/clean.js
index 75ac18e..6d955cf 100644
--- a/bin/templates/scripts/cordova/lib/clean.js
+++ b/bin/templates/scripts/cordova/lib/clean.js
@@ -33,7 +33,7 @@ module.exports.run = function() {
})[0];
if (!projectName) {
- return Q.reject("No Xcode project found in " + projectPath);
+ return Q.reject('No Xcode project found in ' + projectPath);
}
return check_reqs.run().then(function() {
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/f7a88814/bin/templates/scripts/cordova/lib/run.js
----------------------------------------------------------------------
diff --git a/bin/templates/scripts/cordova/lib/run.js b/bin/templates/scripts/cordova/lib/run.js
index 53153fc..151cad2 100644
--- a/bin/templates/scripts/cordova/lib/run.js
+++ b/bin/templates/scripts/cordova/lib/run.js
@@ -36,9 +36,9 @@ module.exports.run = function (argv) {
// but still valid since they can be passed down to build command
var args = nopt({
// "archs": String, // TODO: add support for building different archs
- "list": Boolean,
- "nobuild": Boolean,
- "device": Boolean, "emulator": Boolean, "target": String
+ 'list': Boolean,
+ 'nobuild': Boolean,
+ 'device': Boolean, 'emulator': Boolean, 'target': String
}, {}, argv);
// Validate args
@@ -48,10 +48,10 @@ module.exports.run = function (argv) {
// validate target device for ios-sim
// Valid values for "--target" (case sensitive):
- var validTargets = ["iPhone-4s", "iPhone-5", "iPhone-5s", "iPhone-6-Plus", "iPhone-6",
- "iPad-2", "iPad-Retina", "iPad-Air", "Resizable-iPhone", "Resizable-iPad"];
+ var validTargets = ['iPhone-4s', 'iPhone-5', 'iPhone-5s', 'iPhone-6-Plus', 'iPhone-6',
+ 'iPad-2', 'iPad-Retina', 'iPad-Air', 'Resizable-iPhone', 'Resizable-iPad'];
if (args.target && validTargets.indexOf(args.target) < 0 ) {
- return Q.reject(args.target + " is not a valid target for emulator");
+ return Q.reject(args.target + ' is not a valid target for emulator');
}
// support for CB-8168 `cordova/run --list`
@@ -136,7 +136,7 @@ function deployToSim(appPath, target) {
function listDevices() {
return require('./list-devices').run()
.then(function (devices) {
- console.log("Available iOS Devices:");
+ console.log('Available iOS Devices:');
devices.forEach(function (device) {
console.log('\t' + device);
});
@@ -146,7 +146,7 @@ function listDevices() {
function listEmulators() {
return require('./list-emulator-images').run()
.then(function (emulators) {
- console.log("Available iOS Virtual Devices:");
+ console.log('Available iOS Virtual Devices:');
emulators.forEach(function (emulator) {
console.log('\t' + emulator);
});
@@ -154,24 +154,24 @@ function listEmulators() {
}
module.exports.help = function () {
- console.log("\nUsage: run [ --device | [ --emulator [ --target=<id> ] ] ] [ --debug | --release | --nobuild ]");
+ console.log('\nUsage: run [ --device | [ --emulator [ --target=<id> ] ] ] [ --debug | --release | --nobuild ]');
// TODO: add support for building different archs
// console.log(" [ --archs=\"<list of target architectures>\" ] ");
- console.log(" --device : Deploys and runs the project on the connected device.");
- console.log(" --emulator : Deploys and runs the project on an emulator.");
- console.log(" --target=<id> : Deploys and runs the project on the specified target.");
- console.log(" --debug : Builds project in debug mode. (Passed down to build command, if necessary)");
- console.log(" --release : Builds project in release mode. (Passed down to build command, if necessary)");
- console.log(" --nobuild : Uses pre-built package, or errors if project is not built.");
+ console.log(' --device : Deploys and runs the project on the connected device.');
+ console.log(' --emulator : Deploys and runs the project on an emulator.');
+ console.log(' --target=<id> : Deploys and runs the project on the specified target.');
+ console.log(' --debug : Builds project in debug mode. (Passed down to build command, if necessary)');
+ console.log(' --release : Builds project in release mode. (Passed down to build command, if necessary)');
+ console.log(' --nobuild : Uses pre-built package, or errors if project is not built.');
// TODO: add support for building different archs
// console.log(" --archs : Specific chip architectures (`anycpu`, `arm`, `x86`, `x64`).");
- console.log("");
- console.log("Examples:");
- console.log(" run");
- console.log(" run --device");
- console.log(" run --emulator --target=\"iPhone-6-Plus\"");
- console.log(" run --device --release");
- console.log(" run --emulator --debug");
- console.log("");
+ console.log('');
+ console.log('Examples:');
+ console.log(' run');
+ console.log(' run --device');
+ console.log(' run --emulator --target=\"iPhone-6-Plus\"');
+ console.log(' run --device --release');
+ console.log(' run --emulator --debug');
+ console.log('');
process.exit(0);
};
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/f7a88814/package.json
----------------------------------------------------------------------
diff --git a/package.json b/package.json
index 1714e4d..2f4b5d4 100644
--- a/package.json
+++ b/package.json
@@ -13,8 +13,10 @@
"apache"
],
"scripts": {
- "test": "npm run jasmine",
- "jasmine": "jasmine-node --captureExceptions --color tests/spec"
+ "test": "npm run jshint && npm run jasmine",
+ "jasmine": "jasmine-node --captureExceptions --color tests/spec",
+ "jshint": "node node_modules/jshint/bin/jshint bin && node node_modules/jshint/bin/jshint tests"
+
},
"author": "Apache Software Foundation",
"license": "Apache Version 2.0",
@@ -23,5 +25,8 @@
"shelljs": "^0.2.6",
"coffee-script": "^1.7.1",
"nodeunit": "^0.8.7"
+ },
+ "devDependencies": {
+ "jshint": "^2.6.0"
}
}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/f7a88814/tests/.jshintrc
----------------------------------------------------------------------
diff --git a/tests/.jshintrc b/tests/.jshintrc
new file mode 100644
index 0000000..17eae32
--- /dev/null
+++ b/tests/.jshintrc
@@ -0,0 +1,11 @@
+{
+ "node": true
+ , "bitwise": true
+ , "undef": true
+ , "trailing": true
+ , "quotmark": true
+ , "indent": 4
+ , "unused": "vars"
+ , "latedef": "nofunc"
+ , "jasmine": true
+}
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/f7a88814/tests/spec/cordovalib.spec.js
----------------------------------------------------------------------
diff --git a/tests/spec/cordovalib.spec.js b/tests/spec/cordovalib.spec.js
index dc581ff..10cd696 100644
--- a/tests/spec/cordovalib.spec.js
+++ b/tests/spec/cordovalib.spec.js
@@ -36,7 +36,7 @@ describe('cordova-lib', function() {
return_code = shell.exec(command).code;
// if iOS Simulator is running, kill it
- if (return_code == 0) { // found
+ if (return_code === 0) { // found
shell.echo('iOS Simulator is running, we\'re going to kill it.');
return_code = shell.exec('killall "iOS Simulator"').code;
expect(return_code).toBe(0);
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cordova.apache.org
For additional commands, e-mail: commits-help@cordova.apache.org