diff options
-rw-r--r-- | lib/config/plugins.js | 2 | ||||
-rw-r--r-- | test/plugins.js | 15 |
2 files changed, 16 insertions, 1 deletions
diff --git a/lib/config/plugins.js b/lib/config/plugins.js index 5d98736..11a1104 100644 --- a/lib/config/plugins.js +++ b/lib/config/plugins.js @@ -20,7 +20,7 @@ function normalizePluginsList(plugins) { plugins = _.map(plugins, function(plugin) { if (plugin.name) return plugin; - var parts = plugin.split('@'); + var parts = plugin.split('@', 1); var name = parts[0]; var version = parts[1]; return { diff --git a/test/plugins.js b/test/plugins.js index 399cdc5..62cf9ba 100644 --- a/test/plugins.js +++ b/test/plugins.js @@ -81,6 +81,21 @@ describe('Plugins', function() { }) .should.be.fulfilledWith(1); }); + it('should correctly install dependencies from GitHub via ssh', function() { + return mock.setupBook({ + 'book.json': { + plugins: ['ga@git@github.com:GitbookIO/plugin-ga.git#master'] + } + }) + .then(function(book) { + return book.prepareConfig() + .then(function() { + var plugins = new PluginsManager(book); + return plugins.install(); + }); + }) + .should.be.fulfilledWith(1); + }); }); describe('Loading', function() { |