Skip to content

Instantly share code, notes, and snippets.

@tomasperezv
Forked from stoyan/jsperf-bookmarklet.js
Last active December 19, 2015 04:08
Show Gist options
  • Save tomasperezv/5894518 to your computer and use it in GitHub Desktop.
Save tomasperezv/5894518 to your computer and use it in GitHub Desktop.
(function(){
var key = localStorage.wpt_key;
if (!key) {
var prompt = window.__proto__.prompt;
key = prompt('Your WebPagetest API key, please?');
if (!key) {
return gameOver();
}
localStorage.wpt_key = key;
}
// base params
var wpt = 'http://www.webpagetest.org/runtest.php?';
var params = {
k: key,
time: 60,
runs: 1,
fvonly: 1,
url: 'http://jsperf.com' + location.pathname + '#run'
};
Object
.keys(params)
.forEach(function(key) {
wpt += key + '=' + encodeURIComponent(params[key]) + '&';
});
/*
* Example of available locations:
* Dulles
* Frankfurt
* China
* Dulles
*/
var locations = localStorage.wpt_locations && localStorage.wpt_locations.split(',');
if (!locations) {
locations = ['Dulles_IE6', 'Dulles_IE7', 'Dulles_IE8', 'Dulles_IE9', 'Dulles_IE10'];
}
// pop some windows up
var open = window.__proto__.open;
locations.forEach(function(loco){
open(wpt + 'location=' + encodeURIComponent(loco));
});
gameOver();
function gameOver() {
console.log('JSPerf bookmarklet help: http://phpied.com/jsperf-bookmarklet');
console.log('If broken, check your localStorage.wpt_key and wpt_locations');
}
}());
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment