]> git.proxmox.com Git - mirror_novnc.git/commitdiff
Switch to PhantomJS 2.x for testing
authorSolly Ross <sross@redhat.com>
Sat, 3 Sep 2016 17:53:47 +0000 (13:53 -0400)
committerSolly Ross <sross@redhat.com>
Fri, 16 Sep 2016 19:49:52 +0000 (15:49 -0400)
This commit switches over to use PhantomJS 2.x, bringing in a whole host
of improvements (including `Function#bind`, so we can remove the
`Function#bind` shim in core/util.js).

core/util.js
package.json
tests/run_from_console.casper.js
tests/run_from_console.js

index cbc74dc49770e72a85e80851d8459be751dd1b31..f2e12ae17aeada9f3e8bbbbdb51115e035533df4 100644 (file)
 
 var Util = {};
 
-
-var addFunc = function (cl, name, func) {
-    if (!cl.prototype[name]) {
-        Object.defineProperty(cl.prototype, name, { enumerable: false, value: func });
-    }
-};
-
-// PhantomJS 1.x doesn't support bind,
-// so leave this in until PhantomJS 2.0 is released
-//This prototype is provided by the Mozilla foundation and
-//is distributed under the MIT license.
-//http://www.ibiblio.org/pub/Linux/LICENSES/mit.license
-addFunc(Function, 'bind', function (oThis) {
-    if (typeof this !== "function") {
-        // closest thing possible to the ECMAScript 5
-        // internal IsCallable function
-        throw new TypeError("Function.prototype.bind - " +
-                            "what is trying to be bound is not callable");
-    }
-
-    var aArgs = Array.prototype.slice.call(arguments, 1),
-            fToBind = this,
-            fNOP = function () {},
-            fBound = function () {
-                return fToBind.apply(this instanceof fNOP && oThis ? this
-                                                                   : oThis,
-                                     aArgs.concat(Array.prototype.slice.call(arguments)));
-            };
-
-    fNOP.prototype = this.prototype;
-    fBound.prototype = new fNOP();
-
-    return fBound;
-});
-
 //
 // requestAnimationFrame shim with setTimeout fallback
 //
index 26ee6ff400d7300167b70ef01caaf8a382c808c5..c169e922131352c8153314711af1f5734d70aaea 100644 (file)
     "karma-chai": "^0.1.0",
     "karma-mocha": "^0.1.10",
     "karma-mocha-reporter": "^1.0.0",
-    "karma-phantomjs-launcher": "^0.1.4",
+    "karma-phantomjs-launcher": "^1.0.0",
     "karma-sauce-launcher": "^0.2.10",
     "karma-sinon": "^1.0.4",
     "karma-sinon-chai-latest": "^0.1.0",
     "mocha": "^2.1.0",
     "open": "^0.0.5",
-    "phantom": "^0.7.2",
-    "phantomjs": "^1.9.15",
+    "phantomjs-prebuilt": "^2.1.4",
     "sinon": "^1.12.2",
     "sinon-chai": "^2.7.0",
     "spooky": "^0.2.5",
index 6a738a3ef7d249439106d0b3f39d84b1d5ef023f..ba8546b904689db8a3862dab013f09caffc9e4c4 100644 (file)
@@ -1,7 +1,7 @@
 var Spooky = require('spooky');
 var path = require('path');
 
-var phantom_path = require('phantomjs').path;
+var phantom_path = require('phantomjs-prebuilt').path;
 var casper_path = path.resolve(__dirname, '../node_modules/casperjs/bin/casperjs');
 process.env.PHANTOMJS_EXECUTABLE = phantom_path;
 var casper_opts = {
index d7d13da2320890605a8cf4a467f1b43a79096d0c..1a2b800a01f1e3264ec4b28b4cbda202fc3a4d76 100755 (executable)
@@ -92,7 +92,7 @@ if (program.autoInject) {
   var template = {
     header: "<html>\n<head>\n<meta charset='utf-8' />\n<link rel='stylesheet' href='" + get_path('node_modules/mocha/mocha.css') + "'/>\n</head>\n<body><div id='mocha'></div>",
     script_tag: function(p) { return "<script src='" + p + "'></script>"; },
-    footer: "<script>\nmocha.checkLeaks();\nmocha.globals(['navigator', 'create', 'ClientUtils', '__utils__']);\nmocha.run(function () { window.__mocha_done = true; });\n</script>\n</body>\n</html>"
+    footer: "<script>\nmocha.checkLeaks();\nmocha.globals(['navigator', 'create', 'ClientUtils', '__utils__', 'requestAnimationFrame', 'WebSocket']);\nmocha.run(function () { window.__mocha_done = true; });\n</script>\n</body>\n</html>"
   };
 
   template.header += "\n" + template.script_tag(get_path('node_modules/chai/chai.js'));