From 4352456129bfa8a8a6bbf4d38fb40d9876b67ec4 Mon Sep 17 00:00:00 2001 From: Ian Clelland Date: Tue, 24 Jun 2014 14:05:03 -0400 Subject: [PATCH] CB-5971: Fix package / project validation --- bin/lib/create.js | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/bin/lib/create.js b/bin/lib/create.js index a31604a4..b2490f24 100755 --- a/bin/lib/create.js +++ b/bin/lib/create.js @@ -113,18 +113,13 @@ function copyScripts(projectPath) { */ function validatePackageName(package_name) { //Make the package conform to Java package types - if (!/[a-zA-Z0-9_]+\.[a-zA-Z0-9_](.[a-zA-Z0-9_])*/.test(package_name)) { + //Enforce underscore limitation + if (!/^[a-zA-Z]+(\.[a-zA-Z0-9][a-zA-Z0-9_]*)+$/.test(package_name)) { return Q.reject('Package name must look like: com.company.Name'); } - //Enforce underscore limitation - if (/[_]+[a-zA-Z0-9_]*/.test(package_name)) { - return Q.reject("Package name can't begin with an underscore"); - } - //Class is a reserved word - if(/[C|c]+lass+[\s|\.]/.test(package_name) && !/[a-zA-Z0-9_]+[C|c]+lass/.test(package_name)) - { + if(/\b[Cc]lass\b/.test(package_name)) { return Q.reject('class is a reserved word'); } @@ -137,6 +132,11 @@ function validatePackageName(package_name) { * otherwise. */ function validateProjectName(project_name) { + //Make sure there's something there + if (project_name === '') { + return Q.reject('Project name cannot be empty'); + } + //Enforce stupid name error if (project_name === 'CordovaActivity') { return Q.reject('Project name cannot be CordovaActivity');