[ 
https://issues.apache.org/jira/browse/CB-12018?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16645375#comment-16645375
 ] 

ASF GitHub Bot commented on CB-12018:
-------------------------------------

brodybits closed pull request #140: fixjasmine: CB-12018 : updated tests to 
work with jasmine and added t…
URL: https://github.com/apache/cordova-js/pull/140
 
 
   

This is a PR merged from a forked repository.
As GitHub hides the original diff on merge, it is displayed below for
the sake of provenance:

As this is a foreign pull request (from a fork), the diff is supplied
below (as it won't show otherwise due to GitHub magic):

diff --git a/package.json b/package.json
index 24d5b178..8ee2b4d6 100644
--- a/package.json
+++ b/package.json
@@ -66,7 +66,7 @@
     "grunt-contrib-clean": "^1.0.0",
     "grunt-contrib-jshint": "^1.0.0",
     "istanbul": "^0.4.5",
-    "jasmine-node": "1.14.5",
+    "jasmine": "^2.5.2",
     "jsdom-no-contextify": "^3.1.0",
     "mkdirp": "^0.5.0",
     "open": "0.0.5"
diff --git a/src/common/argscheck.js b/src/common/argscheck.js
index f9872707..da8fb6d9 100644
--- a/src/common/argscheck.js
+++ b/src/common/argscheck.js
@@ -19,7 +19,7 @@
  *
 */
 
-var utils = require('cordova/utils');
+var utils = require('./utils');
 
 var moduleExports = module.exports;
 
diff --git a/src/common/builder.js b/src/common/builder.js
index 75d3ea77..8a89409f 100644
--- a/src/common/builder.js
+++ b/src/common/builder.js
@@ -19,7 +19,7 @@
  *
 */
 
-var utils = require('cordova/utils');
+var utils = require('./utils');
 
 function each(objects, func, context) {
     for (var prop in objects) {
diff --git a/src/common/channel.js b/src/common/channel.js
index 1e8674ed..dc41d874 100644
--- a/src/common/channel.js
+++ b/src/common/channel.js
@@ -19,7 +19,7 @@
  *
 */
 
-var utils = require('cordova/utils'),
+var utils = require('./utils'),
     nextGuid = 1;
 
 /**
diff --git a/src/common/init.js b/src/common/init.js
index 8d862882..6fa1bda9 100644
--- a/src/common/init.js
+++ b/src/common/init.js
@@ -24,7 +24,7 @@ var cordova = require('cordova');
 var modulemapper = require('cordova/modulemapper');
 var platform = require('cordova/platform');
 var pluginloader = require('cordova/pluginloader');
-var utils = require('cordova/utils');
+var utils = require('./utils');
 
 var platformInitChannelsArray = [channel.onNativeReady, 
channel.onPluginsReady];
 
diff --git a/src/common/init_b.js b/src/common/init_b.js
index 8a805d15..21ae266f 100644
--- a/src/common/init_b.js
+++ b/src/common/init_b.js
@@ -24,7 +24,7 @@ var cordova = require('cordova');
 var modulemapper = require('cordova/modulemapper');
 var platform = require('cordova/platform');
 var pluginloader = require('cordova/pluginloader');
-var utils = require('cordova/utils');
+var utils = require('./utils');
 
 var platformInitChannelsArray = [channel.onDOMContentLoaded, 
channel.onNativeReady, channel.onPluginsReady];
 
diff --git a/src/common/modulemapper.js b/src/common/modulemapper.js
index ea14c2aa..f01b257c 100644
--- a/src/common/modulemapper.js
+++ b/src/common/modulemapper.js
@@ -18,7 +18,7 @@
  *
 */
 
-var builder = require('cordova/builder'),
+var builder = require('./builder'),
     moduleMap = define.moduleMap,
     symbolList,
     deprecationMap;
diff --git a/src/common/modulemapper_b.js b/src/common/modulemapper_b.js
index 98d82d36..75ce2c93 100644
--- a/src/common/modulemapper_b.js
+++ b/src/common/modulemapper_b.js
@@ -18,7 +18,7 @@
  *
 */
 
-var builder = require('cordova/builder'),
+var builder = require('./builder'),
     symbolList = [],
     deprecationMap;
 
diff --git a/src/common/pluginloader.js b/src/common/pluginloader.js
index f2d34e0f..421d88e8 100644
--- a/src/common/pluginloader.js
+++ b/src/common/pluginloader.js
@@ -19,8 +19,8 @@
  *
 */
 
-var modulemapper = require('cordova/modulemapper');
-var urlutil = require('cordova/urlutil');
+var modulemapper = require('./modulemapper');
+var urlutil = require('./urlutil');
 
 // Helper function to inject a <script> tag.
 // Exported for testing.
diff --git a/src/common/pluginloader_b.js b/src/common/pluginloader_b.js
index 46e4446c..92f37412 100644
--- a/src/common/pluginloader_b.js
+++ b/src/common/pluginloader_b.js
@@ -19,7 +19,7 @@
  *
 */
 
-var modulemapper = require('cordova/modulemapper');
+var modulemapper = require('./modulemapper');
 
 // Handler for the cordova_plugins.js content.
 // See plugman's plugin_loader.js for the details of this object.
diff --git a/test/android/test.exec.js b/test/android/test.exec.js
index a8e0b241..099c53d7 100644
--- a/test/android/test.exec.js
+++ b/test/android/test.exec.js
@@ -60,10 +60,10 @@ describe('android exec.processMessages', function () {
     }
 
     describe('exec', function() {
-        it('should process messages in order even when called recursively', 
function() {
+        it('Test#001 : should process messages in order even when called 
recursively', function() {
             var firstCallbackId = null;
             var callCount = 0;
-            nativeApi.exec.andCallFake(function(secret, service, action, 
callbackId, argsJson) {
+            nativeApi.exec.and.callFake(function(secret, service, action, 
callbackId, argsJson) {
                 expect(secret).toBe(1234);
                 ++callCount;
                 if (callCount == 1) {
@@ -99,8 +99,8 @@ describe('android exec.processMessages', function () {
                 expect(winSpy3).toHaveBeenCalledWith('three');
             });
         });
-        it('should process messages asynchronously', function() {
-            nativeApi.exec.andCallFake(function(secret, service, action, 
callbackId, argsJson) {
+        it('Test#002 : should process messages asynchronously', function() {
+            nativeApi.exec.and.callFake(function(secret, service, action, 
callbackId, argsJson) {
                 expect(secret).toBe(1234);
                 return createCallbackMessage(true, false, 1, callbackId, 
'stwo');
             });
@@ -128,7 +128,7 @@ describe('android exec.processMessages', function () {
 
         function performExecAndReturn(messages) {
 
-            nativeApi.exec.andCallFake(function(secret, service, action, 
callbackId, argsJson) {
+            nativeApi.exec.and.callFake(function(secret, service, action, 
callbackId, argsJson) {
                 return messages;
             });
 
@@ -138,63 +138,63 @@ describe('android exec.processMessages', function () {
             waitsFor(function() { return callbackSpy.wasCalled }, 200);
         }
 
-        it('should handle payloads of false', function() {
+        it('Test#003 : should handle payloads of false', function() {
             var messages = createCallbackMessage(true, true, 1, 'id', 'f');
             performExecAndReturn(messages);
             runs(function() {
                 expect(callbackSpy).toHaveBeenCalledWith('id', true, 1, 
[false], true);
             });
         });
-        it('should handle payloads of true', function() {
+        it('Test#004 : should handle payloads of true', function() {
             var messages = createCallbackMessage(true, true, 1, 'id', 't');
             performExecAndReturn(messages);
             runs(function() {
                 expect(callbackSpy).toHaveBeenCalledWith('id', true, 1, 
[true], true);
             });
         });
-        it('should handle payloads of null', function() {
+        it('Test#005 : should handle payloads of null', function() {
             var messages = createCallbackMessage(true, true, 1, 'id', 'N');
             performExecAndReturn(messages);
             runs(function() {
                 expect(callbackSpy).toHaveBeenCalledWith('id', true, 1, 
[null], true);
             });
         });
-        it('should handle payloads of numbers', function() {
+        it('Test#006 : should handle payloads of numbers', function() {
             var messages = createCallbackMessage(true, true, 1, 'id', 'n-3.3');
             performExecAndReturn(messages);
             runs(function() {
                 expect(callbackSpy).toHaveBeenCalledWith('id', true, 1, 
[-3.3], true);
             });
         });
-        it('should handle payloads of strings', function() {
+        it('Test#007 : should handle payloads of strings', function() {
             var messages = createCallbackMessage(true, true, 1, 'id', 'sHello 
world');
             performExecAndReturn(messages);
             runs(function() {
                 expect(callbackSpy).toHaveBeenCalledWith('id', true, 1, 
['Hello world'], true);
             });
         });
-        it('should handle payloads of JSON objects', function() {
+        it('Test#008 : should handle payloads of JSON objects', function() {
             var messages = createCallbackMessage(true, true, 1, 'id', 
'{"a":1}');
             performExecAndReturn(messages);
             runs(function() {
                 expect(callbackSpy).toHaveBeenCalledWith('id', true, 1, 
[{a:1}], true);
             });
         });
-        it('should handle payloads of JSON arrays', function() {
+        it('Test#009 : should handle payloads of JSON arrays', function() {
             var messages = createCallbackMessage(true, true, 1, 'id', '[1]');
             performExecAndReturn(messages);
             runs(function() {
                 expect(callbackSpy).toHaveBeenCalledWith('id', true, 1, [[1]], 
true);
             });
         });
-        it('should handle other callback opts', function() {
+        it('Test#010 : should handle other callback opts', function() {
             var messages = createCallbackMessage(false, false, 3, 'id', 
'sfoo');
             performExecAndReturn(messages);
             runs(function() {
                 expect(callbackSpy).toHaveBeenCalledWith('id', false, 3, 
['foo'], false);
             });
         });
-        it('should handle multiple messages', function() {
+        it('Test#011 : should handle multiple messages', function() {
             var message1 = createCallbackMessage(false, false, 3, 'id', 
'sfoo');
             var message2 = createCallbackMessage(true, true, 1, 'id', 'f');
             var messages = message1 + message2;
@@ -210,10 +210,10 @@ describe('android exec.processMessages', function () {
                 expect(callbackSpy).toHaveBeenCalledWith('id', true, 1, 
[false], true);
             });
         });
-        it('should poll for more messages when hitting an *', function() {
+        it('Test#012 : should poll for more messages when hitting an *', 
function() {
             var message1 = createCallbackMessage(false, false, 3, 'id', 
'sfoo');
             var message2 = createCallbackMessage(true, true, 1, 'id', 'f');
-            nativeApi.retrieveJsMessages.andCallFake(function() {
+            nativeApi.retrieveJsMessages.and.callFake(function() {
                 expect(callbackSpy).toHaveBeenCalledWith('id', false, 3, 
['foo'], false);
                 callbackSpy.reset();
                 return message2;
@@ -224,12 +224,12 @@ describe('android exec.processMessages', function () {
                 expect(callbackSpy).toHaveBeenCalledWith('id', true, 1, 
[false], true);
             });
         });
-        it('should call callbacks in order when one callback enqueues 
another.', function() {
+        it('Test#013 : should call callbacks in order when one callback 
enqueues another.', function() {
             var message1 = createCallbackMessage(false, false, 3, 'id', 
'scall1');
             var message2 = createCallbackMessage(false, false, 3, 'id', 
'scall2');
             var message3 = createCallbackMessage(false, false, 3, 'id', 
'scall3');
 
-            callbackSpy.andCallFake(function() {
+            callbackSpy.and.callFake(function() {
                 if (callbackSpy.calls.length == 1) {
                     performExecAndReturn(message3);
                 }
diff --git a/test/ios/test.exec.js b/test/ios/test.exec.js
index 80062779..9ce85e32 100644
--- a/test/ios/test.exec.js
+++ b/test/ios/test.exec.js
@@ -33,8 +33,8 @@ describe('iOS exec', function () {
     var origUserAgent = navigator.userAgent;
 
     beforeEach(function() {
-        winSpy.reset();
-        failSpy.reset();
+        winSpy.calls.reset();
+        failSpy.calls.reset();
     });
 
     afterEach(function() {
@@ -57,7 +57,7 @@ describe('iOS exec', function () {
     }
 
     describe('exec', function() {
-        it('should return "" from nativeFetchMessages work when nothing is 
pending.', function() {
+        it('Test#001 : should return "" from nativeFetchMessages work when 
nothing is pending.', function() {
             var execPayload = exec.nativeFetchMessages();
             expect(execPayload).toBe('');
         });
diff --git a/test/test.argscheck.js b/test/test.argscheck.js
index 10a41758..0c15c287 100644
--- a/test/test.argscheck.js
+++ b/test/test.argscheck.js
@@ -20,7 +20,7 @@
 */
 
 describe('argscheck', function() {
-    var argscheck = require('cordova/argscheck');
+    var argscheck = require('../src/common/argscheck');
 
     function createTestFunc(allowNull) {
         return function testFunc(num, obj, arr, str, date, func) {
@@ -32,48 +32,48 @@ describe('argscheck', function() {
       argscheck.enableChecks = true;
     });
 
-    it('should not throw when given valid args', function() {
+    it('Test#001 : should not throw when given valid args', function() {
         var testFunc = createTestFunc(false);
         testFunc(0, {}, [], '', new Date(), testFunc, 1);
     });
-    it('should not throw when given valid optional args', function() {
+    it('Test#002 : should not throw when given valid optional args', 
function() {
         var testFunc = createTestFunc(true);
         testFunc(0, {}, [], '', new Date(), testFunc, '');
     });
-    it('should not throw when given missing optional args', function() {
+    it('Test#003 : should not throw when given missing optional args', 
function() {
         var testFunc = createTestFunc(true);
         testFunc();
     });
-    it('should not throw when given null optional args', function() {
+    it('Test#004 : should not throw when given null optional args', function() 
{
         var testFunc = createTestFunc(true);
         testFunc(null, null, null, null, null, null, null);
     });
-    it('should throw when given invalid number', function() {
+    it('Test#005 : should throw when given invalid number', function() {
         var testFunc = createTestFunc(true);
-        expect(function() { testFunc('foo', null, null, null, null, null) 
}).toThrow('Wrong type for parameter "num" of testFunc: Expected Number, but 
got String.');
+        expect(function() { testFunc('foo', null, null, null, null, null) 
}).toThrow(new Error ('Wrong type for parameter "num" of testFunc: Expected 
Number, but got String.'));
     });
-    it('should throw when given invalid object', function() {
+    it('Test#006 : should throw when given invalid object', function() {
         var testFunc = createTestFunc(true);
         // Do not allow arrays for objects since we're usually dealing with 
JSON when expecting objects.
-        expect(function() { testFunc(null, [], null, null, null, null) 
}).toThrow('Wrong type for parameter "obj" of testFunc: Expected Object, but 
got Array.');
+        expect(function() { testFunc(null, [], null, null, null, null) 
}).toThrow(new Error ('Wrong type for parameter "obj" of testFunc: Expected 
Object, but got Array.'));
     });
-    it('should throw when given invalid array', function() {
+    it('Test#007 : should throw when given invalid array', function() {
         var testFunc = createTestFunc(true);
-        expect(function() { testFunc(null, null, {}, null, null, null) 
}).toThrow('Wrong type for parameter "arr" of testFunc: Expected Array, but got 
Object.');
+        expect(function() { testFunc(null, null, {}, null, null, null) 
}).toThrow(new Error ('Wrong type for parameter "arr" of testFunc: Expected 
Array, but got Object.'));
     });
-    it('should throw when given invalid string', function() {
+    it('Test#008 : should throw when given invalid string', function() {
         var testFunc = createTestFunc(true);
-        expect(function() { testFunc(null, null, null, 5, null, null) 
}).toThrow('Wrong type for parameter "str" of testFunc: Expected String, but 
got Number.');
+        expect(function() { testFunc(null, null, null, 5, null, null) 
}).toThrow(new Error ('Wrong type for parameter "str" of testFunc: Expected 
String, but got Number.'));
     });
-    it('should throw when given invalid date', function() {
+    it('Test#009 : should throw when given invalid date', function() {
         var testFunc = createTestFunc(true);
-        expect(function() { testFunc(null, null, null, null, 233, null) 
}).toThrow('Wrong type for parameter "date" of testFunc: Expected Date, but got 
Number.');
+        expect(function() { testFunc(null, null, null, null, 233, null) 
}).toThrow(new Error ('Wrong type for parameter "date" of testFunc: Expected 
Date, but got Number.'));
     });
-    it('should throw when given invalid function', function() {
+    it('Test#010 : should throw when given invalid function', function() {
         var testFunc = createTestFunc(true);
-        expect(function() { testFunc(null, null, null, null, null, new Date) 
}).toThrow('Wrong type for parameter "func" of testFunc: Expected Function, but 
got Date.');
+        expect(function() { testFunc(null, null, null, null, null, new Date) 
}).toThrow(new Error ('Wrong type for parameter "func" of testFunc: Expected 
Function, but got Date.'));
     });
-    it('should not throw when checking is disabled', function() {
+    it('Test#011 : should not throw when checking is disabled', function() {
         var testFunc = createTestFunc(false);
         argscheck.enableChecks = false;
         testFunc();
diff --git a/test/test.base64.js b/test/test.base64.js
index 6248a366..30668173 100644
--- a/test/test.base64.js
+++ b/test/test.base64.js
@@ -20,9 +20,9 @@
 */
 
 describe("base64", function () {
-    var base64 = require('cordova/base64');
+    var base64 = require('../src/common/base64');
 
-    it("can base64 encode strings correctly", function () {
+    it("Test#001 : can base64 encode strings correctly", function () {
         var arrayBuffer = new ArrayBuffer(6),
             view = new Uint8Array(arrayBuffer);
         for (var i = 0; i < view.length; i++) {
@@ -36,7 +36,7 @@ describe("base64", function () {
         expect(base64.fromArrayBuffer(arrayBuffer)).toBe('AAECAwQF');
     });
 
-    it("can base64 encode a binary string in an ArrayBuffer", function () {
+    it("Test#002 : can base64 encode a binary string in an ArrayBuffer", 
function () {
       var arrayBuffer = new ArrayBuffer(256),
           view = new Uint8Array(arrayBuffer);
           base64string = 
'AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKissLS4vMDEyMzQ1Njc4OTo7PD0+P0BBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWltcXV5fYGFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6e3x9fn+AgYKDhIWGh4iJiouMjY6PkJGSk5SVlpeYmZqbnJ2en6ChoqOkpaanqKmqq6ytrq+wsbKztLW2t7i5uru8vb6/wMHCw8TFxsfIycrLzM3Oz9DR0tPU1dbX2Nna29zd3t/g4eLj5OXm5+jp6uvs7e7v8PHy8/T19vf4+fr7/P3+/w=='
@@ -48,7 +48,7 @@ describe("base64", function () {
       expect(base64.fromArrayBuffer(arrayBuffer)).toBe(base64string);
     });
 
-    it("can base64 encode an text string in an ArrayBuffer", function () {
+    it("Test#003 : can base64 encode an text string in an ArrayBuffer", 
function () {
         var orig = 'Some Awesome Test This Is!'
             , base64string = typeof btoa != 'undefined' ? btoa(orig) : new 
Buffer('Some Awesome Test This Is!', 'binary').toString('base64')
             , arrayBuffer = new ArrayBuffer(orig.length)
@@ -61,7 +61,7 @@ describe("base64", function () {
         expect(base64.fromArrayBuffer(arrayBuffer)).toBe(base64string);
     });
 
-    it("can decode a base64-encoded text string into an ArrayBuffer", function 
() {
+    it("Test#004 : can decode a base64-encoded text string into an 
ArrayBuffer", function () {
         var orig = 'Some Awesome Test This Is!',
             base64string = typeof btoa != 'undefined' ? btoa(orig) : new 
Buffer(orig, 'binary').toString('base64');
 
diff --git a/test/test.builder.js b/test/test.builder.js
index 19f47697..49b7e5ba 100644
--- a/test/test.builder.js
+++ b/test/test.builder.js
@@ -21,9 +21,9 @@
 
 describe("builder", function () {
 
-    var builder = require('cordova/builder');
+    var builder = require('../src/common/builder');
 
-    it("includes the module into the target", function () {
+    it("Test#001 : includes the module into the target", function () {
 
         var target = {},
             objects = {
@@ -38,7 +38,7 @@ describe("builder", function () {
         expect(target.foo).toBe(require("cordova/builder"));
     });
 
-    it("returns an empty object literal if no path", function () {
+    it("Test#002 : returns an empty object literal if no path", function () {
         var target = {},
             objects = {cat: {}};
 
@@ -47,7 +47,7 @@ describe("builder", function () {
         expect(target.cat).toBeDefined();
     });
 
-    it("builds out the children", function () {
+    it("Test#003 : builds out the children", function () {
 
         var target = {},
             objects = {
diff --git a/test/test.channel.js b/test/test.channel.js
index dcd67009..91f19278 100644
--- a/test/test.channel.js
+++ b/test/test.channel.js
@@ -20,12 +20,12 @@
 */
 
 describe("channel", function () {
-    var channel = require('cordova/channel'),
+    var channel = require('../src/common/channel'),
         multiChannel,
         stickyChannel;
 
     function callCount(spy) {
-        return spy.argsForCall.length;
+        return spy.calls.argsFor.length;
     }
     function expectCallCount(spy, count) {
         expect(callCount(spy)).toEqual(count);
@@ -36,7 +36,7 @@ describe("channel", function () {
     });
 
     describe("subscribe method", function() {
-        it("should throw an exception if no arguments are provided", 
function() {
+        it("Test#001 : should throw an exception if no arguments are 
provided", function() {
             expect(function() {
                 multiChannel.subscribe();
             }).toThrow();
@@ -49,7 +49,7 @@ describe("channel", function () {
                 multiChannel.subscribe(undefined);
             }).toThrow();
         });
-        it("should accept a function or an EventListener object implementing 
the handleEvent interface", function() {
+        it("Test#002 : should accept a function or an EventListener object 
implementing the handleEvent interface", function() {
             expect(function() {
                 multiChannel.subscribe(function () {});
             }).not.toThrow();
@@ -62,7 +62,7 @@ describe("channel", function () {
                 multiChannel.subscribe({apply:function(){},call:function(){}});
             }).toThrow();
         });
-        it("should not change number of handlers if no function is provided", 
function() {
+        it("Test#003 : should not change number of handlers if no function is 
provided", function() {
             var initialLength = multiChannel.numHandlers;
 
             try {
@@ -77,7 +77,7 @@ describe("channel", function () {
 
             expect(multiChannel.numHandlers).toEqual(initialLength);
         });
-        it("should not change number of handlers when subscribing same 
function multiple times", function() {
+        it("Test#004 : should not change number of handlers when subscribing 
same function multiple times", function() {
             var handler = function(){};
 
             multiChannel.subscribe(handler);
@@ -91,7 +91,7 @@ describe("channel", function () {
     });
 
     describe("unsubscribe method", function() {
-        it("should throw an exception if no arguments are provided", 
function() {
+        it("Test#005 : should throw an exception if no arguments are 
provided", function() {
             expect(function() {
                 multiChannel.unsubscribe();
             }).toThrow();
@@ -100,7 +100,7 @@ describe("channel", function () {
                 multiChannel.unsubscribe(null);
             }).toThrow();
         });
-        it("should accept a function or an EventListener object implementing 
the handleEvent interface", function() {
+        it("Test#006 : should accept a function or an EventListener object 
implementing the handleEvent interface", function() {
             expect(function() {
                 multiChannel.unsubscribe(function () {});
             }).not.toThrow();
@@ -113,12 +113,12 @@ describe("channel", function () {
                 
multiChannel.unsubscribe({apply:function(){},call:function(){}});
             }).toThrow();
         });
-        it("should not decrement numHandlers if unsubscribing something that 
does not exist", function() {
+        it("Test#007 : should not decrement numHandlers if unsubscribing 
something that does not exist", function() {
             multiChannel.subscribe(function() {});
             multiChannel.unsubscribe(function() {});
             expect(multiChannel.numHandlers).toEqual(1);
         });
-        it("should change the handlers length appropriately", function() {
+        it("Test#008 : should change the handlers length appropriately", 
function() {
             var firstHandler = function() {};
             var secondHandler = function() {};
             var thirdHandler = function() {};
@@ -136,7 +136,7 @@ describe("channel", function () {
 
             expect(multiChannel.numHandlers).toEqual(0);
         });
-        it("should not decrement handlers length more than once if 
unsubscribing a single handler", function() {
+        it("Test#009 : should not decrement handlers length more than once if 
unsubscribing a single handler", function() {
             var firstHandler = function(){};
             multiChannel.subscribe(firstHandler);
 
@@ -149,7 +149,7 @@ describe("channel", function () {
 
             expect(multiChannel.numHandlers).toEqual(0);
         });
-        it("should not unregister a function registered with a different 
handler", function() {
+        it("Test#010 : should not unregister a function registered with a 
different handler", function() {
             var cHandler = function(){};
             var c2Handler = function(){};
             var c2 = channel.create('jables');
@@ -168,7 +168,7 @@ describe("channel", function () {
     });
 
     function commonFireTests(multi) {
-        it("should fire all subscribed handlers", function() {
+        it("Test#011 : should fire all subscribed handlers", function() {
             var testChannel = multi ? multiChannel : stickyChannel;
             var handler = jasmine.createSpy();
             var anotherOne = jasmine.createSpy();
@@ -181,16 +181,15 @@ describe("channel", function () {
             expectCallCount(handler, 1);
             expectCallCount(anotherOne, 1);
         });
-        it("should pass params to handlers", function() {
+        it("Test#012 : should pass params to handlers", function() {
             var testChannel = multi ? multiChannel : stickyChannel;
             var handler = jasmine.createSpy();
 
             testChannel.subscribe(handler);
-
             testChannel.fire(1, 2, 3);
-            expect(handler.argsForCall[0]).toEqual({0:1, 1:2, 2:3});
+            expect(handler.calls.argsFor(0)).toEqual([ 1, 2, 3 ]);
         });
-        it("should not fire a handler that was unsubscribed", function() {
+        it("Test#013 : should not fire a handler that was unsubscribed", 
function() {
             var testChannel = multi ? multiChannel : stickyChannel;
             var handler = jasmine.createSpy();
             var anotherOne = jasmine.createSpy();
@@ -204,7 +203,7 @@ describe("channel", function () {
             expectCallCount(handler, 0);
             expectCallCount(anotherOne, 1);
         });
-        it("should not fire a handler more than once if it was subscribed more 
than once", function() {
+        it("Test#014 : should not fire a handler more than once if it was 
subscribed more than once", function() {
             var testChannel = multi ? multiChannel : stickyChannel;
             var handler = jasmine.createSpy();
 
@@ -216,7 +215,7 @@ describe("channel", function () {
 
             expectCallCount(handler, 1);
         });
-        it("handler should be called when subscribed, removed, and subscribed 
again", function() {
+        it("Test#15 : handler should be called when subscribed, removed, and 
subscribed again", function() {
             var testChannel = multi ? multiChannel : stickyChannel;
             var handler = jasmine.createSpy();
 
@@ -228,9 +227,9 @@ describe("channel", function () {
 
             expectCallCount(handler, 1);
         });
-        it("should not prevent a callback from firing when it is removed 
during firing.", function() {
+        it("Test#016 : should not prevent a callback from firing when it is 
removed during firing.", function() {
             var testChannel = multi ? multiChannel : stickyChannel;
-            var handler = jasmine.createSpy().andCallFake(function() { 
testChannel.unsubscribe(handler2); });
+            var handler = jasmine.createSpy().and.callFake(function() { 
testChannel.unsubscribe(handler2); });
             var handler2 = jasmine.createSpy();
             testChannel.subscribe(handler);
             testChannel.subscribe(handler2);
@@ -241,7 +240,7 @@ describe("channel", function () {
     }
     describe("fire method for sticky channels", function() {
         commonFireTests(false);
-        it("should instantly trigger the callback if the event has already 
been fired", function () {
+        it("Test#017 : should instantly trigger the callback if the event has 
already been fired", function () {
             var before = jasmine.createSpy('before'),
                 after = jasmine.createSpy('after');
 
@@ -253,16 +252,16 @@ describe("channel", function () {
             expectCallCount(after, 1);
             expect(after.argsForCall[0]).toEqual({0:1, 1:2, 2:3});
         });
-        it("should instantly trigger the callback if the event is currently 
being fired.", function () {
-            var handler1 = jasmine.createSpy().andCallFake(function() { 
stickyChannel.subscribe(handler2); }),
-                handler2 = jasmine.createSpy().andCallFake(function(arg1) { 
expect(arg1).toEqual('foo');});
+        it("Test#018 : should instantly trigger the callback if the event is 
currently being fired.", function () {
+            var handler1 = jasmine.createSpy().and.callFake(function() { 
stickyChannel.subscribe(handler2); }),
+                handler2 = jasmine.createSpy().and.callFake(function(arg1) { 
expect(arg1).toEqual('foo');});
 
             stickyChannel.subscribe(handler1);
             stickyChannel.fire('foo');
 
             expectCallCount(handler2, 1);
         });
-        it("should unregister all handlers after being fired.", function() {
+        it("Test#019 : should unregister all handlers after being fired.", 
function() {
             var handler = jasmine.createSpy();
             stickyChannel.subscribe(handler);
             stickyChannel.fire();
@@ -272,7 +271,7 @@ describe("channel", function () {
     });
     describe("fire method for multi channels", function() {
         commonFireTests(true);
-        it("should not trigger the callback if the event has already been 
fired", function () {
+        it("Test#020 : should not trigger the callback if the event has 
already been fired", function () {
             var before = jasmine.createSpy('before'),
                 after = jasmine.createSpy('after');
 
@@ -283,8 +282,8 @@ describe("channel", function () {
             expectCallCount(before, 1);
             expectCallCount(after, 0);
         });
-        it("should not trigger the callback if the event is currently being 
fired.", function () {
-            var handler1 = jasmine.createSpy().andCallFake(function() { 
multiChannel.subscribe(handler2); }),
+        it("Test#021 : should not trigger the callback if the event is 
currently being fired.", function () {
+            var handler1 = jasmine.createSpy().and.callFake(function() { 
multiChannel.subscribe(handler2); }),
                 handler2 = jasmine.createSpy();
 
             multiChannel.subscribe(handler1);
@@ -294,7 +293,7 @@ describe("channel", function () {
             expectCallCount(handler1, 2);
             expectCallCount(handler2, 1);
         });
-        it("should not unregister handlers after being fired.", function() {
+        it("Test#022 : should not unregister handlers after being fired.", 
function() {
             var handler = jasmine.createSpy();
             multiChannel.subscribe(handler);
             multiChannel.fire();
@@ -303,7 +302,7 @@ describe("channel", function () {
         });
     });
     describe("channel.join()", function() {
-        it("should be called when all functions start unfired", function() {
+        it("Test#023 : should be called when all functions start unfired", 
function() {
             var handler = jasmine.createSpy(),
                 stickyChannel2 = channel.createSticky('stickyChannel');
             channel.join(handler, [stickyChannel, stickyChannel2]);
@@ -313,7 +312,7 @@ describe("channel", function () {
             stickyChannel2.fire();
             expectCallCount(handler, 1);
         });
-        it("should be called when one functions start fired", function() {
+        it("Test#024 : should be called when one functions start fired", 
function() {
             var handler = jasmine.createSpy(),
                 stickyChannel2 = channel.createSticky('stickyChannel');
             stickyChannel.fire();
@@ -322,7 +321,7 @@ describe("channel", function () {
             stickyChannel2.fire();
             expectCallCount(handler, 1);
         });
-        it("should be called when all functions start fired", function() {
+        it("Test#025 : should be called when all functions start fired", 
function() {
             var handler = jasmine.createSpy(),
                 stickyChannel2 = channel.createSticky('stickyChannel');
             stickyChannel.fire();
@@ -330,15 +329,15 @@ describe("channel", function () {
             channel.join(handler, [stickyChannel, stickyChannel2]);
             expectCallCount(handler, 1);
         });
-        it("should throw if a channel is not sticky", function() {
+        it("Test#026 : should throw if a channel is not sticky", function() {
             expect(function() {
                 channel.join(function(){}, [stickyChannel, multiChannel]);
             }).toThrow();
         });
     });
     describe("onHasSubscribersChange", function() {
-        it("should be called only when the first subscriber is added and last 
subscriber is removed.", function() {
-            var handler = jasmine.createSpy().andCallFake(function() {
+        it("Test#027 : should be called only when the first subscriber is 
added and last subscriber is removed.", function() {
+            var handler = jasmine.createSpy().and.callFake(function() {
                 if (callCount(handler) == 1) {
                     expect(this.numHandlers).toEqual(1);
                 } else {
diff --git a/test/test.modulemapper.js b/test/test.modulemapper.js
index 28910996..e49276a6 100644
--- a/test/test.modulemapper.js
+++ b/test/test.modulemapper.js
@@ -19,7 +19,7 @@
 */
 
 describe('modulemapper', function() {
-    var modulemapper = require('cordova/modulemapper'),
+    var modulemapper = require('../src/common/modulemapper'),
         testmodule = require('cordova/test/testmodule'),
         utils = require('cordova/utils');
     var context;
@@ -41,10 +41,10 @@ describe('modulemapper', function() {
         modulemapper.reset();
     });
 
-    it('should throw in module does not exist', function() {
+    it('Test#001 : should throw in module does not exist', function() {
         expect(function() { modulemapper.clobbers('cordova/invalid', 
'newProp'); }).toThrow();
     });
-    it('should properly set a new top-level property', function() {
+    it('Test#002 : should properly set a new top-level property', function() {
         modulemapper.clobbers('cordova/test/testmodule', 'newProp1');
         modulemapper.defaults('cordova/test/testmodule', 'newProp2');
         modulemapper.merges('cordova/test/testmodule', 'newProp3');
@@ -53,7 +53,7 @@ describe('modulemapper', function() {
         expect(context.newProp2).toBe(testmodule);
         expect(context.newProp3).toBe(testmodule);
     });
-    it('should properly set a new non-top-level property', function() {
+    it('Test#003 : should properly set a new non-top-level property', 
function() {
         modulemapper.clobbers('cordova/test/testmodule', 'foo1.newProp');
         modulemapper.defaults('cordova/test/testmodule', 'foo2.newProp');
         modulemapper.merges('cordova/test/testmodule', 'foo3.newProp');
@@ -62,7 +62,7 @@ describe('modulemapper', function() {
         expect(context.foo2.newProp).toBe(testmodule);
         expect(context.foo3.newProp).toBe(testmodule);
     });
-    it('should properly set a new non-top-level property #2', function() {
+    it('Test#004 : should properly set a new non-top-level property #2', 
function() {
         modulemapper.clobbers('cordova/test/testmodule', 'foo1.bar.newProp');
         modulemapper.defaults('cordova/test/testmodule', 'foo2.bar.newProp');
         modulemapper.merges('cordova/test/testmodule', 'foo3.bar.newProp');
@@ -71,7 +71,7 @@ describe('modulemapper', function() {
         expect(context.foo2.bar.newProp).toBe(testmodule);
         expect(context.foo3.bar.newProp).toBe(testmodule);
     });
-    it('should properly set a non-new non-top-level property', function() {
+    it('Test#005 : should properly set a non-new non-top-level property', 
function() {
         modulemapper.clobbers('cordova/test/testmodule', 'obj.newProp1');
         modulemapper.defaults('cordova/test/testmodule', 'obj.newProp2');
         modulemapper.merges('cordova/test/testmodule', 'obj.newProp3');
@@ -80,7 +80,7 @@ describe('modulemapper', function() {
         expect(context.obj.newProp2).toBe(testmodule);
         expect(context.obj.newProp3).toBe(testmodule);
     });
-    it('should clobber existing properties', function() {
+    it('Test#006 : should clobber existing properties', function() {
         modulemapper.clobbers('cordova/test/testmodule', 'num');
         modulemapper.clobbers('cordova/test/testmodule', 'obj.str');
         modulemapper.clobbers('cordova/test/testmodule', 'getme');
@@ -91,7 +91,7 @@ describe('modulemapper', function() {
         expect(context.getme).toBe(testmodule);
         expect(context.TestClass).toBe(testmodule);
     });
-    it('should not clobber existing properties when using defaults', 
function() {
+    it('Test#007 : should not clobber existing properties when using 
defaults', function() {
         modulemapper.defaults('cordova/test/testmodule', 'num');
         modulemapper.defaults('cordova/test/testmodule', 'obj.str');
         modulemapper.defaults('cordova/test/testmodule', 'obj.getme');
@@ -102,13 +102,13 @@ describe('modulemapper', function() {
         expect(context.getme).not.toBe(testmodule);
         expect(context.TestClass).not.toBe(testmodule);
     });
-    it('should throw when namespace is a non-object', function() {
+    it('Test#008 : should throw when namespace is a non-object', function() {
         expect(function() {
             modulemapper.merges('cordova/test/testmodule', 'num');
             modulemapper.mapModules(context);
         }).toThrow();
     });
-    it('should merge into objects', function() {
+    it('Test#009 : should merge into objects', function() {
         modulemapper.merges('cordova/test/testmodule', 'obj');
         modulemapper.mapModules(context);
         for (var k in testmodule) {
@@ -120,20 +120,20 @@ describe('modulemapper', function() {
         expect(context.obj.subObj.num).toBe(9);
         expect(context.obj.subObj.str).toBe(testmodule.subObj.str);
     });
-    it('should merge into constructor prototypes', function() {
+    it('Test#010 : should merge into constructor prototypes', function() {
         modulemapper.merges('cordova/test/testmodule', 'TestClass');
         modulemapper.mapModules(context);
         for (var k in testmodule) {
             expect(context.TestClass.prototype[k]).toBe(testmodule[k]);
         }
     });
-    it('should maintain order of calls', function() {
+    it('Test#011 : should maintain order of calls', function() {
         modulemapper.merges('cordova/test/testmodule', 'obj');
         modulemapper.clobbers('cordova/test/testmodule', 'obj');
         modulemapper.mapModules(context);
         expect(context.obj).toBe(testmodule);
     });
-    it('should maintain order of calls2', function() {
+    it('Test#012 : should maintain order of calls2', function() {
         modulemapper.merges('cordova/test/testmodule', 'obj.foo');
         modulemapper.clobbers('cordova/test/testmodule', 'obj');
         modulemapper.merges('cordova/test/testmodule', 'obj.obj');
@@ -143,30 +143,30 @@ describe('modulemapper', function() {
         expect(context.obj).not.toBe(testmodule.obj);
         expect(context.obj.obj).toBe(testmodule.obj);
     });
-    it('should return undefined for getOriginalSymbol("unknown")', function() {
+    it('Test#013 : should return undefined for getOriginalSymbol("unknown")', 
function() {
         expect(modulemapper.getOriginalSymbol(context, 
'blah')).toBeUndefined();
         modulemapper.mapModules(context);
         expect(modulemapper.getOriginalSymbol(context, 
'obj.foo.bar')).toBeUndefined('obj.foo.bar');
     });
-    it('should remember original symbols when clobbering', function() {
+    it('Test#014 : should remember original symbols when clobbering', 
function() {
         var orig = context.obj;
         modulemapper.clobbers('cordova/test/testmodule', 'obj');
         modulemapper.mapModules(context);
         expect(modulemapper.getOriginalSymbol(context, 'obj')).toBe(orig);
     });
-    it('should remember original symbols when double clobbering', function() {
+    it('Test#015 : should remember original symbols when double clobbering', 
function() {
         var orig = context.obj;
         modulemapper.clobbers('cordova/test/testmodule', 'obj');
         modulemapper.clobbers('cordova/test/testmodule', 'obj');
         modulemapper.mapModules(context);
         expect(modulemapper.getOriginalSymbol(context, 'obj')).toBe(orig);
     });
-    it('should return original symbols when symbol was not clobbered', 
function() {
+    it('Test#016 : should return original symbols when symbol was not 
clobbered', function() {
         modulemapper.mapModules(context);
         expect(modulemapper.getOriginalSymbol(context, 
'obj')).toBe(context.obj);
         expect(modulemapper.getOriginalSymbol(context, 
'obj.str')).toBe(context.obj.str);
     });
-    it('should log about deprecated property access', function() {
+    it('Test#017 : should log about deprecated property access', function() {
         var origConsoleLog = console.log;
         console.log = jasmine.createSpy('console.log');
         this.after(function() {
diff --git a/test/test.pluginloader.js b/test/test.pluginloader.js
index bb36f139..5877d9a1 100644
--- a/test/test.pluginloader.js
+++ b/test/test.pluginloader.js
@@ -20,7 +20,7 @@
 */
 
 describe('pluginloader', function() {
-    var pluginloader = require('cordova/pluginloader');
+    var pluginloader = require('../src/common/pluginloader');
     var injectScript;
     var cdvScript;
     var done;
@@ -48,8 +48,8 @@ describe('pluginloader', function() {
         done = true;
     }
 
-    it('should inject cordova_plugins.js when it is not already there', 
function() {
-        injectScript.andCallFake(function(url, onload, onerror) {
+    it('Test#001 : should inject cordova_plugins.js when it is not already 
there', function() {
+        injectScript.and.callFake(function(url, onload, onerror) {
             // jsdom deficiencies:
             if (typeof location != 'undefined') {
                 expect(url).toBe(window.location.href.replace(/\/[^\/]*?$/, 
'/foo/cordova_plugins.js'));
@@ -70,7 +70,7 @@ describe('pluginloader', function() {
         });
     });
 
-    it('should not inject cordova_plugins.js when it is already there', 
function() {
+    it('Test#002 : should not inject cordova_plugins.js when it is already 
there', function() {
         define('cordova/plugin_list', function(require, exports, module) {
             module.exports = [];
         });
@@ -81,13 +81,13 @@ describe('pluginloader', function() {
         });
     });
 
-    it('should inject plugin scripts when they are not already there', 
function() {
+    it('Test#003 : should inject plugin scripts when they are not already 
there', function() {
         define('cordova/plugin_list', function(require, exports, module) {
             module.exports = [
                 { "file": "some/path.js", "id": "some.id" }
             ];
         });
-        injectScript.andCallFake(function(url, onload, onerror) {
+        injectScript.and.callFake(function(url, onload, onerror) {
             // jsdom deficiencies:
             if (typeof location != 'undefined') {
                 expect(url).toBe(window.location.href.replace(/\/[^\/]*?$/, 
'/foo/some/path.js'));
@@ -106,7 +106,7 @@ describe('pluginloader', function() {
         });
     });
 
-    it('should not inject plugin scripts when they are already there', 
function() {
+    it('Test#004 : should not inject plugin scripts when they are already 
there', function() {
         define('cordova/plugin_list', function(require, exports, module) {
             module.exports = [
                 { "file": "some/path.js", "id": "some.id" }
diff --git a/test/test.require.js b/test/test.require.js
index c7e22857..431e116b 100644
--- a/test/test.require.js
+++ b/test/test.require.js
@@ -27,22 +27,22 @@ describe("require + define", function () {
     });
 
     describe("when defining", function () {
-        it("can define and remove module", function () {
+        it("Test#001 : can define and remove module", function () {
             define("a", jasmine.createSpy());
             define.remove("a");
         });
 
-        it("can remove a module that doesn't exist", function () {
+        it("Test#002 : can remove a module that doesn't exist", function () {
             define.remove("can't touch this");
         });
 
-        it("throws an error the module already exists", function () {
+        it("Test#003 : throws an error the module already exists", function () 
{
             expect(function () {
                 define("cordova", function () {});
             }).toThrow("module cordova already defined");
         });
 
-        it("doesn't call the factory method when defining", function () {
+        it("Test#004 : doesn't call the factory method when defining", 
function () {
             var factory = jasmine.createSpy();
             define("ff", factory);
             expect(factory).not.toHaveBeenCalled();
@@ -50,13 +50,13 @@ describe("require + define", function () {
     });
 
     describe("when requiring", function () {
-        it("throws an exception when module doesn't exist", function () {
+        it("Test#005 : throws an exception when module doesn't exist", 
function () {
             expect(function () {
                 require("your mom");
             }).toThrow("module your mom not found");
         });
 
-        it("throws an exception when modules depend on each other", function 
() {
+        it("Test#006 : throws an exception when modules depend on each other", 
function () {
             define("ModuleA", function(require, exports, module) {
                 require("ModuleB");
             });
@@ -70,7 +70,7 @@ describe("require + define", function () {
             define.remove("ModuleB");
         });
 
-        it("throws an exception when a cycle of requires occurs", function () {
+        it("Test#007 : throws an exception when a cycle of requires occurs", 
function () {
             define("ModuleA", function(require, exports, module) {
                 require("ModuleB");
             });
@@ -88,7 +88,7 @@ describe("require + define", function () {
             define.remove("ModuleC");
         });
 
-        it("calls the factory method when requiring", function () {
+        it("Test#008 : calls the factory method when requiring", function () {
             var factory = jasmine.createSpy();
             define("dino", factory);
             require("dino");
@@ -102,7 +102,7 @@ describe("require + define", function () {
             define.remove("dino");
         });
 
-        it("returns the exports object", function () {
+        it("Test#009 : returns the exports object", function () {
             define("a", function (require, exports, module) {
                 exports.stuff = "asdf";
             });
@@ -112,7 +112,7 @@ describe("require + define", function () {
             define.remove("a");
         });
 
-        it("can use both the exports and module.exports object", function () {
+        it("Test#010 : can use both the exports and module.exports object", 
function () {
             define("a", function (require, exports, module) {
                 exports.a = "a";
                 module.exports.b = "b";
@@ -124,7 +124,7 @@ describe("require + define", function () {
             define.remove("a");
         });
 
-        it("returns was is assigned to module.exports", function () {
+        it("Test#011 : returns was is assigned to module.exports", function () 
{
             var Foo = function () { };
             define("a", function (require, exports, module) {
                 module.exports = new Foo();
@@ -135,7 +135,7 @@ describe("require + define", function () {
             define.remove("a");
         });
 
-        it("has the id and exports values but not the factory on the module 
object", function () {
+        it("Test#012 : has the id and exports values but not the factory on 
the module object", function () {
             var factory = function (require, exports, module) {
                 expect(module.id).toBe("a");
                 expect(module.exports).toBeDefined();
diff --git a/test/test.urlutil.js b/test/test.urlutil.js
index a3142d07..240e49ce 100644
--- a/test/test.urlutil.js
+++ b/test/test.urlutil.js
@@ -20,13 +20,13 @@
 */
 
 describe('urlutil', function () {
-    var urlutil = require('cordova/urlutil');
+    var urlutil = require('../src/common/urlutil');
     if (typeof process != 'undefined') {
         // Tests don't work under jsdom.
         return;
     }
 
-    it('can handle absolute URLs', function () {
+    it('Test#001 : can handle absolute URLs', function () {
         
expect(urlutil.makeAbsolute('http://www.foo.com')).toBe('http://www.foo.com/');
         
expect(urlutil.makeAbsolute('http://www.foo.com?foo#bar')).toBe('http://www.foo.com/?foo#bar');
         
expect(urlutil.makeAbsolute('http://www.foo.com/%20hi')).toBe('http://www.foo.com/%20hi');
@@ -38,17 +38,17 @@ describe('urlutil', function () {
         expect(urlutil.makeAbsolute('/foo?a#b')).toBe(rootUrl + 'foo?a#b');
         expect(urlutil.makeAbsolute('/foo/b%20ar')).toBe(rootUrl + 
'foo/b%20ar');
     }
-    it('can handle root-relative URLs', function () {
+    it('Test#002 : can handle root-relative URLs', function () {
         testRootRelative(window.location.href);
     });
 
-    it('can handle relative URLs', function () {
+    it('Test#003 : can handle relative URLs', function () {
         var rootUrl = window.location.href.replace(/[?#].*/, 
'').replace(/[^\/]*$/, '');
         expect(urlutil.makeAbsolute('foo?a#b')).toBe(rootUrl + 'foo?a#b');
         expect(urlutil.makeAbsolute('foo/b%20ar')).toBe(rootUrl + 
'foo/b%20ar');
     });
 
-    it('can handle relative URLs with base tags', function () {
+    it('Test#004 : can handle relative URLs with base tags', function () {
         var rootUrl = 'http://base.com/esab/';
         var baseTag = document.createElement('base');
         baseTag.href = rootUrl;
@@ -61,7 +61,7 @@ describe('urlutil', function () {
         testRootRelative(rootUrl);
     });
 
-    it('can handle scheme-relative URLs', function () {
+    it('Test#005 : can handle scheme-relative URLs', function () {
         var rootUrl = window.location.href.replace(/:.*/, '');
         
expect(urlutil.makeAbsolute('//www.foo.com/baz%20?foo#bar')).toBe(rootUrl + 
'://www.foo.com/baz%20?foo#bar');
     });
diff --git a/test/test.utils.js b/test/test.utils.js
index 00f4da9e..32da0a81 100644
--- a/test/test.utils.js
+++ b/test/test.utils.js
@@ -20,35 +20,35 @@
 */
 
 describe("utils", function () {
-    var utils = require('cordova/utils');
+    var utils = require('../src/common/utils');
 
     describe("utils.arrayIndexOf", function() {
-        it("should return -1 when not found", function() {
+        it("Test#001 : should return -1 when not found", function() {
             expect(utils.arrayIndexOf([1,2,3], 4)).toBe(-1);
         });
-        it("should return 0 for first item", function() {
+        it("Test#002 : should return 0 for first item", function() {
             expect(utils.arrayIndexOf([1,2,3], 1)).toBe(0);
         });
-        it("should return 2 for last item", function() {
+        it("Test#003 : should return 2 for last item", function() {
             expect(utils.arrayIndexOf([1,2,3], 3)).toBe(2);
         });
-        it("should return index of first occurance", function() {
+        it("Test#004 : should return index of first occurance", function() {
             expect(utils.arrayIndexOf([1,2,1], 1)).toBe(0);
         });
     });
 
     describe("utils.arrayRemove", function() {
-        it("should return true when removed.", function() {
+        it("Test#005 : should return true when removed.", function() {
             var a = [1, 2, 3];
             expect(utils.arrayRemove(a, 2)).toBe(true);
             expect(a).toEqual([1, 3]);
         });
-        it("should return false when item was not there.", function() {
+        it("Test#006 : should return false when item was not there.", 
function() {
             var a = [1, 2, 3];
             expect(utils.arrayRemove(a, 4)).toBe(false);
             expect(a).toEqual([1, 2, 3]);
         });
-        it("should remove only first occurance", function() {
+        it("Test#007 : should remove only first occurance", function() {
             var a = [1, 2, 1];
             expect(utils.arrayRemove(a, 1)).toBe(true);
             expect(a).toEqual([2, 1]);
@@ -56,66 +56,66 @@ describe("utils", function () {
     });
 
     describe("isArray",function() {
-        it("should return true for [].", function() {
+        it("Test#008 : should return true for [].", function() {
             var isArray = utils.isArray([]);
             expect(isArray).toBe(true);
         });
-        it("should return true for new Array().", function() {
+        it("Test#009 : should return true for new Array().", function() {
             var isArray = utils.isArray(new Array());
             expect(isArray).toBe(true);
         });
-        it("should return false for {}.", function() {
+        it("Test#010 : should return false for {}.", function() {
             var isArray = utils.isArray({});
             expect(isArray).toBe(false);
         });
     });
 
     describe("isDate",function() {
-        it("should return true for new Date().", function() {
+        it("Test#011 : should return true for new Date().", function() {
             var isDate = utils.isDate(new Date());
             expect(isDate).toBe(true);
         });
-        it("should return false for {}.", function() {
+        it("Test#012 : should return false for {}.", function() {
             var isDate = utils.isDate({});
             expect(isDate).toBe(false);
         });
     });
 
     describe("when cloning", function () {
-        it("can clone an array", function () {
+        it("Test#013 : can clone an array", function () {
             var orig = [1, 2, 3, {four: 4}, "5"];
 
             expect(utils.clone(orig)).toEqual(orig);
             expect(utils.clone(orig)).not.toBe(orig);
         });
 
-        it("can clone null", function () {
+        it("Test#014 : can clone null", function () {
             expect(utils.clone(null)).toBeNull();
         });
 
-        it("can clone undefined", function () {
+        it("Test#015 : can clone undefined", function () {
             expect(utils.clone(undefined)).not.toBeDefined();
         });
 
-        it("can clone a function", function () {
+        it("Test#016 : can clone a function", function () {
             var f = function () { return 4; };
             expect(utils.clone(f)).toBe(f);
         });
 
-        it("can clone a number", function () {
+        it("Test#017 : can clone a number", function () {
             expect(utils.clone(4)).toBe(4);
         });
 
-        it("can clone a string", function () {
+        it("Test#018 : can clone a string", function () {
             expect(utils.clone("why")).toBe("why");
         });
 
-        it("can clone a date", function () {
+        it("Test#19 : can clone a date", function () {
             var d = Date.now();
             expect(utils.clone(d)).toBe(d);
         });
 
-        it("can clone an object", function () {
+        it("Test#020 : can clone an object", function () {
 
             var orig = {
                 a: {
@@ -141,33 +141,33 @@ describe("utils", function () {
     });
 
     describe("when closing around a function", function () {
-        it("calls the original function when calling the closed function", 
function () {
+        it("Test#021 : calls the original function when calling the closed 
function", function () {
             var f = jasmine.createSpy();
             utils.close(null, f)();
             expect(f).toHaveBeenCalled();
         });
 
-        it("uses the correct context for the closed function", function () {
+        it("Test#022 : uses the correct context for the closed function", 
function () {
             var context = {};
             utils.close(context, function () {
                 expect(this).toBe(context);
             })();
         });
 
-        it("passes the arguments to the closed function", function () {
+        it("Test#023 : passes the arguments to the closed function", function 
() {
             utils.close(null, function (arg) {
                 expect(arg).toBe(1);
             })(1);
         });
 
-        it("overrides the arguments when provided", function () {
+        it("Test#024 : overrides the arguments when provided", function () {
             utils.close(null, function (arg) {
                 expect(arg).toBe(42);
             }, [42])(16);
         });
     });
 
-    it("can create a uuid", function () {
+    it("Test#025 : can create a uuid", function () {
         var uuid = utils.createUUID();
         
expect(uuid).toMatch(/^(\{{0,1}([0-9a-fA-F]){8}-([0-9a-fA-F]){4}-([0-9a-fA-F]){4}-([0-9a-fA-F]){4}-([0-9a-fA-F]){12}\}{0,1})$/);
         expect(uuid).not.toEqual(utils.createUUID());


 

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
[email protected]


> Update tests to use jasmine instead of jasmine-node
> ---------------------------------------------------
>
>                 Key: CB-12018
>                 URL: https://issues.apache.org/jira/browse/CB-12018
>             Project: Apache Cordova
>          Issue Type: Improvement
>          Components: cordova-android, cordova-cli, cordova-common, 
> cordova-ios, cordova-js, cordova-lib, cordova-plugman
>            Reporter: Steve Gill
>            Assignee: Audrey So
>            Priority: Major
>              Labels: cordova-7.0.0
>             Fix For: [email protected]
>
>




--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to