Grunt: Refactor testswarm task and add an experimental testswarm-multi-jquery task for testing across jQuery versions

This commit is contained in:
Jörn Zaefferer 2012-06-15 23:51:05 +02:00
parent 8e541f1bf6
commit b657473178

View File

@ -1,12 +1,7 @@
/*jshint node: true */
module.exports = function( grunt ) {
grunt.registerTask( "testswarm", function( commit, configFile ) {
var test,
testswarm = require( "testswarm" ),
config = grunt.file.readJSON( configFile ).jqueryui,
testBase = config.testUrl + commit + "/tests/unit/",
testUrls = [],
tests = {
var tests = {
"Accordion": "accordion/accordion.html",
"Accordion_deprecated": "accordion/accordion_deprecated.html",
"Autocomplete": "autocomplete/autocomplete.html",
@ -30,7 +25,14 @@ grunt.registerTask( "testswarm", function( commit, configFile ) {
"Tabs_deprecated": "tabs/tabs_deprecated.html",
"Tooltip": "tooltip/tooltip.html",
"Widget": "widget/widget.html"
};
};
function submit( commit, tests, configFile ) {
var test,
testswarm = require( "testswarm" ),
config = grunt.file.readJSON( configFile ).jqueryui,
testBase = config.testUrl + commit + "/tests/unit/",
testUrls = [];
for ( test in tests ) {
testUrls.push( testBase + tests[ test ] + "?nojshint=true" );
}
@ -40,7 +42,7 @@ grunt.registerTask( "testswarm", function( commit, configFile ) {
timeout: 1000 * 60 * 30,
done: this.async()
}, {
authUsername: "jqueryui",
authUsername: config.authUsername,
authToken: config.authToken,
jobName: 'jQuery UI commit #<a href="https://github.com/jquery/jquery-ui/commit/' + commit + '">' + commit.substr( 0, 10 ) + '</a>',
runMax: config.runMax,
@ -48,6 +50,22 @@ grunt.registerTask( "testswarm", function( commit, configFile ) {
"runUrls[]": testUrls,
"browserSets[]": ["popular"]
});
}
grunt.registerTask( "testswarm", function( commit, configFile ) {
submit( commit, tests, configFile );
});
grunt.registerTask( "testswarm-multi-jquery", function( commit, configFile ) {
var test,
allTests = {};
for ( test in tests ) {
allTests[ test + "-1.6.3" ] = tests[ test ] + "?nojshint=true&jquery=1.6.3";
}
for ( test in tests ) {
allTests[ test + "-1.7.2" ] = tests[ test ] + "?nojshint=true&jquery=1.7.2";
}
submit( commit, allTests, configFile );
});
};