You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cordova.apache.org by an...@apache.org on 2013/10/09 02:02:25 UTC
[1/2] git commit: CB-4983 plugin name check
Updated Branches:
refs/heads/master 64ce537dd -> 399f63d26
CB-4983 plugin name check
Project: http://git-wip-us.apache.org/repos/asf/cordova-plugman/repo
Commit: http://git-wip-us.apache.org/repos/asf/cordova-plugman/commit/a7361c1a
Tree: http://git-wip-us.apache.org/repos/asf/cordova-plugman/tree/a7361c1a
Diff: http://git-wip-us.apache.org/repos/asf/cordova-plugman/diff/a7361c1a
Branch: refs/heads/master
Commit: a7361c1a7d9b7f5f0f7e3dc6153d23f2c863435c
Parents: f240acc
Author: Anis Kadri <an...@apache.org>
Authored: Tue Oct 8 17:02:13 2013 -0700
Committer: Anis Kadri <an...@apache.org>
Committed: Tue Oct 8 17:02:13 2013 -0700
----------------------------------------------------------------------
spec/registry/registry.spec.js | 29 ++++++++++++++++++++---------
src/registry/manifest.js | 6 +++---
2 files changed, 23 insertions(+), 12 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cordova-plugman/blob/a7361c1a/spec/registry/registry.spec.js
----------------------------------------------------------------------
diff --git a/spec/registry/registry.spec.js b/spec/registry/registry.spec.js
index 5cb8386..1f42ae5 100644
--- a/spec/registry/registry.spec.js
+++ b/spec/registry/registry.spec.js
@@ -3,28 +3,39 @@ var registry = require('../../src/registry/registry'),
fs = require('fs'),
path = require('path'),
Q = require('q'),
+ shell = require('shelljs'),
+ os = require('os'),
npm = require('npm');
describe('registry', function() {
describe('manifest', function() {
- var pluginDir, packageJson;
+ var pluginDir, packageJson, tmp_plugin, tmp_plugin_xml, tmp_package_json;
beforeEach(function() {
pluginDir = __dirname + '/../plugins/EnginePlugin';
- packageJson = path.resolve(pluginDir, 'package.json');
+ tmp_plugin = os.tmpdir() + 'plugin';
+ tmp_plugin_xml = path.join(tmp_plugin, 'plugin.xml');
+ tmp_package_json = path.join(tmp_plugin, 'package.json');
+ shell.cp('-R', pluginDir+"/*", tmp_plugin);
});
afterEach(function() {
- fs.unlink(packageJson);
-
+ shell.rm('-rf', tmp_plugin);
});
it('should generate a package.json from a plugin.xml', function() {
- manifest.generatePackageJsonFromPluginXml(pluginDir);
- expect(fs.existsSync(packageJson));
- expect(JSON.parse(fs.readFileSync(packageJson)).name).toEqual('com.cordova.engine');
- expect(JSON.parse(fs.readFileSync(packageJson)).version).toEqual('1.0.0');
- expect(JSON.parse(fs.readFileSync(packageJson)).engines).toEqual(
+ manifest.generatePackageJsonFromPluginXml(tmp_plugin);
+ expect(fs.existsSync(tmp_package_json));
+ var packageJson = JSON.parse(fs.readFileSync(tmp_package_json));
+ expect(packageJson.name).toEqual('com.cordova.engine');
+ expect(packageJson.version).toEqual('1.0.0');
+ expect(packageJson.engines).toEqual(
[ { name : 'cordova', version : '>=2.3.0' }, { name : 'cordova-plugman', version : '>=0.10.0' }, { name : 'mega-fun-plugin', version : '>=1.0.0' }, { name : 'mega-boring-plugin', version : '>=3.0.0' } ]
);
});
+ it('should raise an error if name does not follow com.domain.* format', function() {
+ var xmlData = fs.readFileSync(tmp_plugin_xml).toString().replace('id="com.cordova.engine"', 'id="engine"');
+ fs.writeFileSync(tmp_plugin_xml, xmlData);
+ manifest.generatePackageJsonFromPluginXml(tmp_plugin);
+ expect(!fs.existsSync(tmp_package_json));
+ });
});
describe('actions', function() {
var done, fakeLoad, fakeNPMCommands;
http://git-wip-us.apache.org/repos/asf/cordova-plugman/blob/a7361c1a/src/registry/manifest.js
----------------------------------------------------------------------
diff --git a/src/registry/manifest.js b/src/registry/manifest.js
index 139a748..dfe265f 100644
--- a/src/registry/manifest.js
+++ b/src/registry/manifest.js
@@ -31,9 +31,9 @@ function generatePackageJsonFromPluginXml(plugin_path) {
if(!name) return Q.reject(new Error('`name` is required'));
- if(!name.match(/^\w+|-*$/))
- return Q.reject(new Error('`name` can only contain alphanumberic characters and -'));
-
+ if(!name.match(/^(\w+\.){2,}.*$/))
+ return Q.reject(new Error('`name` has to follow com.domain.plugin format'));
+
package_json.name = name.toLowerCase();
if(cordova_name) package_json.cordova_name = cordova_name;
[2/2] git commit: Merge branch 'master' of
https://git-wip-us.apache.org/repos/asf/cordova-plugman
Posted by an...@apache.org.
Merge branch 'master' of https://git-wip-us.apache.org/repos/asf/cordova-plugman
Project: http://git-wip-us.apache.org/repos/asf/cordova-plugman/repo
Commit: http://git-wip-us.apache.org/repos/asf/cordova-plugman/commit/399f63d2
Tree: http://git-wip-us.apache.org/repos/asf/cordova-plugman/tree/399f63d2
Diff: http://git-wip-us.apache.org/repos/asf/cordova-plugman/diff/399f63d2
Branch: refs/heads/master
Commit: 399f63d26257293c0b9fe30b4df11e6b6fc212e7
Parents: a7361c1 64ce537
Author: Anis Kadri <an...@apache.org>
Authored: Tue Oct 8 17:02:16 2013 -0700
Committer: Anis Kadri <an...@apache.org>
Committed: Tue Oct 8 17:02:16 2013 -0700
----------------------------------------------------------------------
spec/plugins/VariablePlugin/plugin.xml | 3 +++
spec/util/config-changes.spec.js | 10 ++++++++++
src/util/config-changes.js | 3 ++-
3 files changed, 15 insertions(+), 1 deletion(-)
----------------------------------------------------------------------