Updated Branches:
  refs/heads/future c0de3de12 -> a0665733a

refactored plugins tests and made a small fix to the plugins.js


Project: http://git-wip-us.apache.org/repos/asf/cordova-plugman/repo
Commit: http://git-wip-us.apache.org/repos/asf/cordova-plugman/commit/a0665733
Tree: http://git-wip-us.apache.org/repos/asf/cordova-plugman/tree/a0665733
Diff: http://git-wip-us.apache.org/repos/asf/cordova-plugman/diff/a0665733

Branch: refs/heads/future
Commit: a0665733af2b0f7ae2049ad7d0cdfd2eadcbadb0
Parents: c0de3de
Author: Tim Kim <[email protected]>
Authored: Tue Apr 23 15:02:11 2013 -0700
Committer: Tim Kim <[email protected]>
Committed: Tue Apr 23 15:02:26 2013 -0700

----------------------------------------------------------------------
 spec/util/plugins.spec.js |   70 ++++++++++++++++------------------------
 src/util/plugins.js       |    2 +-
 2 files changed, 29 insertions(+), 43 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cordova-plugman/blob/a0665733/spec/util/plugins.spec.js
----------------------------------------------------------------------
diff --git a/spec/util/plugins.spec.js b/spec/util/plugins.spec.js
index 8990955..e028dc3 100644
--- a/spec/util/plugins.spec.js
+++ b/spec/util/plugins.spec.js
@@ -27,52 +27,38 @@ var http   = require('http'),
 
 describe('plugins', function(){
     describe('server', function(){
-        it('should be able to retrieve information for an existing plugin', 
function(done){
-            plugins.getPluginInfo('ChildBrowser', function(error, plugin) {  
-                expect(error).toBe(null);
-                expect(plugin).not.toBe(null);
-                
expect(plugin.url).toBe('https://github.com/imhotep/ChildBrowser');
-                expect(plugin.name).toBe('ChildBrowser');
-                expect(plugin.description).toBe('ChildBrowser plugin');
-                done();
-            });
+        it('should receive the correct request when searching for a plugin', 
function(){
+            var mySpy = spyOn(http, 'get').andCallThrough();
+            // this clears the timeout in plugins.js
+            var spyTimeout = spyOn(global, 'setTimeout');
+            
+            plugins.getPluginInfo('ChildBrowser', function() {});
+            
+            expect(mySpy).toHaveBeenCalled();
+            
expect(mySpy.argsForCall[0][0]).toBe('http://plugins.cordova.io/cordova_plugins/_design/cordova_plugins/_view/by_name?key="ChildBrowser";');
         });
-        
-        it('should error if searching for a non-existant plugin', 
function(done){
-            plugins.getPluginInfo('MEAT_POPSICLE', function(error, plugin) { 
-                expect(error).not.toBe(null);
-                expect(error).toBe('Could not find information on 
MEAT_POPSICLE plugin');
-                done();
-            });        
-        });
-        
-        it('should list all plugins', function(done){
-            plugins.listAllPlugins(function(plugin){
-                expect(plugin).not.toBe(null);
-                expect(plugin.length).toBeGreaterThan(0);
-                done();
-            });
+
+        it('should receive the correct request when searching for a list of 
plugins', function(){
+            var mySpy = spyOn(http, 'get').andCallThrough();
+            // this clears the timeout in plugins.js
+            var spyTimeout = spyOn(global, 'setTimeout');
+            
+            plugins.listAllPlugins(function(){});
+            
+            expect(mySpy).toHaveBeenCalled();
+            
expect(mySpy.argsForCall[0][0]).toBe('http://plugins.cordova.io/cordova_plugins/_design/cordova_plugins/_view/by_name');
         });
         
-        it('should be able to clone to local from url', function(done){
-            plugins.getPluginInfo('ChildBrowser', function(error, plugin) {  
-                shell.mkdir('-p', temp);
-                plugins.clonePluginGitRepo(plugin.url, temp, function(error){
-                    expect(error).toBe(null);
-                    done();
-                });       
-                shell.rm('-rf', temp);
-            });
+        it('should be able to receive the correct git clone arguments', 
function(){
+            var mySpy = spyOn(plugins, 'clonePluginGitRepo');
+            var plugin_git_url = 'https://github.com/imhotep/ChildBrowser'
+            var myFunction = function(){};
+            
+            plugins.clonePluginGitRepo(plugin_git_url, temp, myFunction);
+            
+             expect(mySpy).toHaveBeenCalled();
+             expect(mySpy).toHaveBeenCalledWith(plugin_git_url, temp, 
myFunction);
         });
-        
-        it('should error if cloning a non-existant plugin', function(done){
-            shell.mkdir('-p', temp);
-            plugins.clonePluginGitRepo('MEAT_POPSICLE', temp, function(error){
-                expect(error).not.toBe(null);
-                done();      
-            });
-            shell.rm('-rf', temp);
-        });       
     });
 });
 

http://git-wip-us.apache.org/repos/asf/cordova-plugman/blob/a0665733/src/util/plugins.js
----------------------------------------------------------------------
diff --git a/src/util/plugins.js b/src/util/plugins.js
index 045f48c..1ad4936 100644
--- a/src/util/plugins.js
+++ b/src/util/plugins.js
@@ -54,7 +54,7 @@ module.exports = {
         setTimeout(function() {
             if (!responded) {
                 console.log('timed out');
-                error('timed out')
+                callback('timed out')
             }
         }, 3000);
     },

Reply via email to