When loading basic tests don't load any others to not overload Android 2.3.
The drawback is that most tests are not selectable in the module dropdown
when the basic module is seelcted.
Refs 2c7e9c9349
jsdom 3 requires Python & Visual Studio on Windows which is a significant
barrier to contributors. Newer jsdom versions don't require pre-compiling
but work only on io.js. This commit installs the new jsdom everywhere (it
does install in old Node.js, it just won't work) and executes Node-related
tests only on newer Nodes or if a working jsdom version is installed. The
latter can be achieved by running the `old_jsdom` task.
Node.js is merging with io.js soon so this will become a smaller problem over
time.
One drawback is our Jenkins setup runs on Node 0.10 so it won't be running
Node tests anymore. We have Travis set up on io.js, though so all PRs
have those tests run. When the new LTS Node.js arrives (as it soon merges
with io.js) we should update our Jenkins infrastructure so that it runs on this
new version.
Fixes gh-2519
Closes gh-2526
The AJAX test performed in unreleasedXHR.html was scheduling PHP processes
sleeping for 10 minutes. When a lot of commits are tested in short intervals
this was causing build failures due to the drained php-fpm pool.
The 10 seconds sleep time should be enough for this test.
Refs 62acda819f
jQuery.type doesn't just return "null" for null but also e.g. "array"
for arrays instead of object so it's not really a typeof analogue.
My suggestion was stupid. Sorry.
Refs 3d7ce0a65f
It might not be obvious to everyone that IE 9 & Android 4.0 are not
ES5-compliant browsers (by a large margin) so it's better to add a support
comment. This requires slight changes in parsing the config file
as it's not a pure JSON anymore. JSHint understands such files without
problems.
Closes gh-2520
Android 2.3 doesn't fire the window.onerror handler, just accept the reality
there and skip the test.
Refs gh-1573
Refs gh-1786
Refs jquery/jquery.com#108
Closes gh-2458
Custom mouseenter/mouseleave implementation was needed because of:
1. Safari 6 not implementing mouseenter/mouseleave at all.
2. Chrome sending mouseenter too often.
The second issue has been fixed in Chrome but exists now in Safari 7
(it's fixed in Safari 8) so we have to keep it for now, unfortunately.
Support comments that mentioned only Safari < 7 were checked & updated
to account for bugs existing in newer versions as well; Safari 6 support
test results were removed.
Refs gh-2482
Android 2.3 chokes on unquoted reserved words being used as property names
which was making Deferred tests not run.
Acknowledge the sad fact that Android 2.3 is not ES5-compliant browser
and enable the "es3" option in JSHint config.
Fixes gh-2478
Closes gh-2481