Commit Graph

248 Commits

Author SHA1 Message Date
Timo Tijhof
55313d32a2 Test: Update index.html to new QUnit format. Close gh-1061.
Depends on jquery/sizzle#177, included with the Sizzle submodule in this commit.
2012-12-10 21:48:20 -05:00
Timo Tijhof
cef044d82e Test: Remove fixtures from QUnit.done hook. Close gh-1069.
This fixes jquery/testswarm#197. These are currently removed from
the TestSwarm injector, however this is jQuery specific, and
should be done from this end instead.
2012-12-10 20:45:20 -05:00
Timo Tijhof
5dd8a90f73 Make compatible with jshint, lint test/data. Close gh-1043. 2012-12-06 13:46:37 -05:00
jaubourg
b7ece8c620 Revert "Organizes the php scripts used for testing better, so that the whole logic of a unit, server-side and client-side, is contained within the unit itself. Nearly all ajax unit tests take advantage of the new 'framework'. Lots of files got deleted because they became redundant or weren't used anymore."
This reverts commit 228ab3ddae.
2012-12-05 14:54:14 +01:00
jaubourg
7f7007dffe Revert "228ab3d followup 1: fix test failures. Close gh-1056."
This reverts commit 20608b3579.
2012-12-05 14:54:00 +01:00
Richard Gibson
20608b3579 228ab3d followup 1: fix test failures. Close gh-1056. 2012-12-05 02:12:32 -05:00
jaubourg
228ab3ddae Organizes the php scripts used for testing better, so that the whole logic of a unit, server-side and client-side, is contained within the unit itself. Nearly all ajax unit tests take advantage of the new 'framework'. Lots of files got deleted because they became redundant or weren't used anymore. 2012-12-04 07:40:12 +01:00
Richard Gibson
4ada325479 More improvements per @jaubourg 2012-12-03 11:32:19 -05:00
Richard Gibson
ad690f8151 Improvements per @jaubourg 2012-12-03 00:49:40 -05:00
Richard Gibson
5b9bf13439 No ticket: improve global variable/ajax request tracking 2012-12-02 23:32:16 -05:00
jaubourg
b9dfcfd736 sandboxes start for real this time (fixes test failures in IE) 2012-11-27 02:39:08 +01:00
jaubourg
603e70b90e Greatly simplifies ajaxTest 2012-11-26 11:49:20 +01:00
jaubourg
d31cef38f2 Total revamping of the ajax unit tests 2012-11-26 03:31:19 +01:00
Richard Gibson
81b094b2c1 No ticket: update test suite to pass QUnit globals check in most environments. Close gh-1016. 2012-11-05 17:24:03 -05:00
Richard Gibson
53cb49cb0a Remove gratuitous punctuation 2012-11-01 22:22:39 -04:00
Richard Gibson
3f51504580 No ticket: remove test suite external dependencies 2012-11-01 17:32:08 -04:00
Richard Gibson
14e1501b89 Fix testing of no-ajax custom builds 2012-11-01 00:40:27 -04:00
Timo Tijhof
6e75fe5f19 No ticket: fix effects test failure in IE6. Close gh-1012. 2012-10-31 16:41:31 -04:00
Timo Tijhof
36c9ecb0f5 Implement expectation test instead of using _removeData. Close gh-997.
* Removed inline usage of QUnit.reset() because it is messing with the
  expectation model as reset does .empty() which does a recursive cleanData
  on everything in #qunit-fixture, so any expectJqData above .reset() would
  fail negatively.

  Instead of calling reset inline, either updated the following assertions to
  take previous assertions' state into account, or broke the test() up into
  2 tests at the point where it would call QUnit.reset.

* After introducing the new memory leak discovery a whole bunch of tests were
  failing as they didn't clean up everything. However I didn't (yet) add
  QUnit.expectJqData calls all over the place because in most if not all of
  these cases it is valid data storage. For example in test "data()", there
  will be an internal data key for "parsedAttrs". This particular test isn't
  intending to test for memory leaks, so therefor I made the new discovery
  system only push failures when the test contains at least 1 call to
  QUnit.expectJqData.

  When not, we'll assume that whatever data is being stored is acceptable
  because the relevant elements still exist in the DOM anyway (QUnit.reset
  will remove the elements and clean up the data automatically).

  I did add a "Always check jQuery.data" mode in the test suite that will
  trigger it everywhere. Maybe one day we'll include a call to everywhere,
  but for now I'm keeping the status quo: Only consider data left in storage
  to be a problem if the test says so ("opt-in").

* Had to move #fx-tests inside the fixture because ".remove()" test would
  otherwise remove stuff permanently and cause random other tests to fail
  as "#hide div" would yield an empty collection.
  (Why wasn't this in the fixture in the first place?)

  As a result moving fx-tests into the fixture a whole bunch of tests failed
  that relied on arbitrary stuff about the document-wide or fixture-wide
  state (e.g. number of divs etc.). So I had to adjust various tests to
  limit their sample data to not be so variable and unlimited...

* Moved out tests for expando cleanup into a separate test.

* Fixed implied global variable 'pass' in effects.js that was causing
  "TypeError: boolean is not a function" in *UNRELATED* dimensions.js that
  uses a global variable "pass = function () {};" ...

* Removed spurious calls to _removeData. The new test exposed various failures
  e.g. where div[0] isn't being assigned any data anyway.
  (queue.js and attributes.js toggleClass).

* Removed spurious clean up at the bottom of test() functions that are
  already covered by the teardown (calling QUnit.reset or removeClass to
  supposedly undo any changes).

* Documented the parentheses-less magic line in toggleClass. It appeared that
  it would always keep the current class name if there was any (since the
  assignment started with "this.className || ...".

  Adding parentheses + spacing is 8 bytes (though only 1 in gzip apparently).
  Only added the comment for now, though I prefer clarity with logical
  operators, I'd rather not face the yayMinPD[1] in this test-related commit.

* Updated QUnit urlConfig to the new format (raw string is deprecated).

* Clean up odd htmlentities in test titles, QUnit escapes this.
  (^\s+test\(.*)(&gt\;) → $1>
  (^\s+test\(.*)(&lt\;) → $1<

[1] jQuery MinJsGz Release Police Department (do the same, download less)
2012-10-28 22:44:57 -04:00
Daniel Gálvez
b398a68333 Fix #11542. document.body should not be special in .offset() and document.documentElement is the default element.offsetParent. Close gh-899. 2012-10-24 23:35:15 -04:00
Sai Wong
2b0e720406 Fix #12048. Set attributes for XML fragments. Close gh-965. 2012-10-20 15:27:43 -04:00
Richard Gibson
c31539c8a2 no ticket: fix jQuery suite failure on Android 2012-10-17 15:20:50 -04:00
Mike Petrovich
861476eb3f Fixes #11635, Explicit overflow:auto is overridden by inline overflow:hidden during animation, closes gh-981 2012-10-16 12:30:28 -04:00
Rick Waldron
611d7660cd Remove duplicate expect. Add QUnit.config.requireExpects to testrunner.js QUnit configurations. 2012-10-15 12:31:27 -04:00
Timo Tijhof
7e8b854152 Test: Clean up and fix misc issues
* Clean up testinit and testrunner

* Uncomment isLocal (at least make sure it is declared)

* Rephrase environment assertions to make sense if one reads
  them when they pass.

* Optimise an expensive loop that might be the cause of this
  in IE6: http://cl.ly/image/3f20053m112n
2012-10-09 20:06:31 -04:00
Mike Sherov
a9c2a9bf61 Scorch the earth and retreat on readyState interactive! Close gh-907. 2012-08-23 20:28:22 -04:00
Elijah Manor
10901f7d9f Fix #12266. IE9/10 says document[0] is document.frames[0]? Close gh-903. 2012-08-22 21:48:02 -04:00
Dave Methvin
ae1d2b3173 Neuter the partialLoadReady test until it's ngnix-ready 2012-08-22 21:47:59 -04:00
Mike Sherov
0f553ed0ca Fix #12282. IE has premature .readyState == "interactive". Close gh-901. 2012-08-20 08:16:07 -04:00
Dave Methvin
2b2ca8baa3 Don't expect QUnit to clean up jQuery internal data. Close gh-883. 2012-08-19 21:09:13 -04:00
Richard Gibson
ff7a434562 Really support subproject tests in testswarm, closes gh-868 2012-07-22 21:49:39 -04:00
Dave Methvin
3016872220 Let subproject tests use their own test fixture. Closes gh-867. 2012-07-19 22:02:37 -04:00
Dave Methvin
2d09e9a325 Image location is relative to css file, not html file. 2012-07-12 11:57:28 -04:00
Dave Methvin
f4e5c1729a Fix #11547. toLowerCase not work good on XML attributes.
This was fixed to some extent in gh-724 but there were insufficient test cases. Removing the lowercase completely allows IE 6/7 to work properly since there you need an exact case match for attributes, even in HTML docs. More discussion and test cases in the comments on gh-724.
2012-07-11 23:09:07 -04:00
Mike Sherov
f5fd41252e Fix #12018, readyState "interactive" in oldIE lies! Closes gh-848. 2012-07-06 10:12:20 -04:00
Richard Gibson
1793eab32b Fix #11971: force numeric animation start to be numeric, closes gh-836. 2012-07-05 21:38:17 -04:00
Rick Waldron
a2758377df Adds src/deprecated.js, test/unit/deprecated.js; -deprecated flag; Moves jQuery.browser and removes use in test/unit/ajax.js. Fixes #11965 2012-06-25 10:02:28 -04:00
Dave Methvin
83dfb99ea9 Tweak test for #11743 in an attempt to placate Jenkins.
I can't get the current test to fail locally or in Browserstack, but suspect it may have something to do with badjson.js.
2012-06-11 22:35:04 -04:00
Timo Tijhof
849303701a Test: Remove unused file "include_js.php", closes gh-820. 2012-06-11 21:18:17 -04:00
jaubourg
cac5b08f72 Here is hoping everything works with the full build and the build without ajax... looking at you @dmethvin ;) 2012-06-11 21:04:34 +02:00
Dave Methvin
142ff73450 Prevent total unit test meltdown ... and now over to @jaubourg! 2012-06-11 14:07:02 -04:00
jaubourg
ac48a19b92 Some work to modularize ajax later on. 2012-06-11 14:00:16 +02:00
Mike Sherov
5f35b3d9f9 Fix #11857. Modularize css.js, add dependency management. Closes gh-816.
See the pull request for more info on the dependency management details.
2012-06-10 21:54:16 -04:00
timmywil
37ffb29d37 Relativize all urls pertaining to dist/jquery.js so users can run their server from any file location; Make sure Sizzle is available for its tests in testrunner. 2012-06-04 18:04:11 -04:00
Rick Waldron
7c23b77af2 Strips IIFEs from modules; Always require built jQuery for tests. 2012-06-04 12:48:18 -04:00
Mike Sherov
ba70f8aeb6 Fix #11724, $(document).height() in Firefox 12. Closes gh-802.
This reopens #3838 for IE6 which is a regression on a fix in 1.7.2, but we'd rather break a really old IE than a really recent Firefox.
2012-05-31 09:24:44 -07:00
Richard Gibson
742872984e Fix #11743: Don't mask script errors in jQuery.ajax, closes gh-795. 2012-05-31 08:31:13 -07:00
timmywil
a8d9d05388 Add quick-start documentation for testing with QUnit and using jQuery's helper methods. 2012-05-29 13:13:26 -04:00
Richard Gibson
7f2cc46955 Fix #11767. Modularize build and unit tests for exluding effects.
Closes gh-785. To build a version of jQuery without effects, use `grunt build:*:*:-effects`. The unit tests feature-check for the interfaces and skip the unit tests for effects if they don't detect it.
2012-05-28 22:36:23 -04:00
timmywil
3ee332b238 Minor test suite adjustments 2012-05-28 12:43:41 -04:00
Trey Hunner
f1dcaad097 Fix indentation in /speed and /test dirs, closes gh-780. 2012-05-18 13:28:50 -04:00
Mike Sherov
c4e22ad8b5 Fix #11721. Remove jQuery.boxModel, deprecate jQuery.support.boxModel.
This removes all internal uses of `jQuery.support.boxModel`. jQuery has never run unit tests with Quirks Mode and has not even feigned support for several years, so these remnants weren't doing much except giving false hope.

For now, `jQuery.support.boxModel` continues to have a value indicating whether the W3C box model is *generally* in use, but be aware that this is easily overridden on an element-by-element basis by the `box-model` CSS property. So don't trust this value.
2012-05-15 23:29:20 -04:00
jaubourg
a743be19bd Fixes #11402. domManip now also removes the closing part of HTML comments or CDATA surrounding executed scripts. Unit tests added. 2012-05-06 01:27:01 +02:00
jaubourg
e3cf0e220c Transform $.bindReady into $.ready.promise. It is now possible to use $.ready.promise or $.when( $.ready ) to get the ready promise. Costs *1* byte min/gzipped. Unit test added. 2012-05-06 01:05:03 +02:00
Mike Sherov
714b8ffd2b reduce complexity of ready further, and try manipulating DOM to make sure we're really ready 2012-05-04 13:31:35 -04:00
Mike Sherov
f925c7a1c9 remove jQuery.quickReady, save bytes, style nits in tests 2012-05-04 10:17:30 -04:00
Mike Sherov
54fab3174c Fix #10067. Create jQuery.quickReady; closes gh-736.
Allows us to get to the ready state sooner by not waiting for iframes to load. If that causes backcompat pain, use `jQuery.quickReady = false` as prescribed by your developer.
2012-04-23 15:44:27 -04:00
Timo Tijhof
df2a22ee61 Enforce 20s timeout for all unit tests. 2012-04-20 10:55:07 -04:00
Yehuda Katz
6bc08c2b2f Remove Ajax requirement for simple XML tests
Previously, all jQuery tests that wanted an XML
document would make an Ajax request to go through
jQuery's XML parsing logic in jQuery.ajax. Now,
use jQuery.parseXML instead.

This removes the need for the Ajax server for
these tests, improves their performance, and
decouples simple core tests from Ajax.

(with scottgonzalez)
2012-04-15 17:41:54 -04:00
Dave Methvin
8d94ed91e4 Revert "No more php/js logic duplication..." on a hunch.
TestSwarm hasn't been happy since this commit, and everyone deserves to be happy.

This reverts commit 318d47b730.
2012-03-07 15:31:35 -05:00
jaubourg
ae138ac6d1 Makes sure start is always called with default context and no arguments. Should stop FF from acting up. Hopefully, this ugly patch can be removed in the future. 2012-03-07 18:23:46 +01:00
jaubourg
d3fad51cad Fixes #11264 or rather seriously limits the risk of global ajaxSettings screwing with script loading in domManip. Gotta love globals and sneaky dependencies. Unit test added. 2012-03-07 16:54:05 +01:00
jaubourg
484cea1b56 Fixes #11426: getting the responseText of an xhr should be tried/caught because of IE's inability to give access to binary data. Unit test added. 2012-03-07 15:39:39 +01:00
jaubourg
014b2a5700 Not testing his code properly makes Julian a silly coder. 2012-03-07 11:58:18 +01:00
jaubourg
318d47b730 No more php/js logic duplication. Ensures modules are still loaded separately when using "file:" protocol (makes debugging much easier, /kiss @rwaldron). Ensures test iframes will use the same jquery as specified in the main document. Known issue: chrome will cringe at cross-frame access using file: protocol, apparently chrome sees this as cross-domain... go figure. 2012-03-07 09:54:52 +01:00
Mike Sherov
5cae50e66e Fix #3838, $(document).height() incorrect in IE6
May still be broken in Netscape Navigator 4.
2012-03-02 11:45:30 -05:00
Mike Sherov
a52391aa1d Fix #7986. $.support.boxModel shan't be fooled by page-level CSS. 2012-02-24 00:14:15 -05:00
Mike Sherov
f36568324d fixes #10693, generalizes the "test something in an iframe" code when a callback isn't needed 2012-02-23 22:55:20 -05:00
Mike Sherov
7226cf2800 fixes #10901, PHP required for unit tests, but still allow the tests to run 2012-02-16 23:17:57 -05:00
Rick Waldron
0944be058e Fix #11257. Correct path to source files. 2012-01-30 22:38:37 -05:00
Richard Gibson
6c8dd7e7d3 Fix #10931: Make unit tests work without web access.
Applies https://github.com/gibson042/jquery/tree/10931 to
  dd900460ac
2012-01-12 20:04:17 -05:00
Mike Sherov
dd900460ac Fix #10902. DRY up the ways to include src files in tests. 2012-01-11 21:35:13 -05:00
timmywil
3d6237ef8a Remove the invisible body in support; Add temporary tests to verify correct support completions for upcoming support changes. 2011-11-17 14:48:27 -05:00
timmywil
7c2d6c8cd8 Fix error in test suite from testElementCrash.html; did not have callbacks.js 2011-11-16 11:39:34 -05:00
Mike Sherov
f35ba5e699 Fix #10691. Remove all instances of equals() and same(), as these are deprecated in QUnit. 2011-11-06 15:27:42 -05:00
timmywil
006fde228d Pass iframe support tests at doc ready. Fixes support fail in FF7 2011-10-31 18:24:34 -04:00
timmywil
38f087b5ae Add a way to fire native events using dispatchEvent/fireEvent in testinit.js; fixes failing click test in FF3.6 2011-10-28 14:17:14 -04:00
timmywil
f3a4d261ec Landing pull request 550. IE6,7,8 cannot use cached fragments from unknown elems. Fixes #10501.
More Details:
- https://github.com/jquery/jquery/pull/550
- http://bugs.jquery.com/ticket/10501
2011-10-23 16:08:10 -04:00
timmywil
7bef99e94d Run ajax tests in swarm 2011-10-13 12:07:54 -04:00
timmywil
8723f3b9e1 Update sizzle; Add sizzle cache collision iframe test. Fixes #8539. 2011-10-13 11:11:41 -04:00
jrburke
bba3d610c7 Landing pull request 331. Add support for registering jQuery as an AMD module. Fixes #7102.
More Details:
 - https://github.com/jquery/jquery/pull/331
 - http://bugs.jquery.com/ticket/7102
2011-09-19 16:37:22 -04:00
timmywil
25205d3f90 Removing topic.js as it will be a plugin 2011-09-19 15:42:30 -04:00
jaubourg
4092e3d275 $.Callbacks, $.Topic and notify/progress on $.Deferred. 2011-09-19 15:42:30 -04:00
timmywil
92405d4f5f Override Sizzle attribute retrieval with jQuery.attr. Fixes #5637, #7128, #9261, #9570, #10178.
Bug fixed on the side: $(window).is('a') was throwing an exception. Fixes #10178.
2011-09-19 15:42:30 -04:00
timmywil
2a045f8269 Revert "Begrudgingly adds chrome detection to jQuery.browser (1.7). Fixes #9385"
This reverts commit dd93d0eb32.
2011-08-26 10:10:35 -04:00
timmywil
e2187f4963 Revert "Updated version numbers; Fixes #9385"
This reverts commit 09fe3ea265.
2011-08-26 10:10:21 -04:00
timmywil
e18cad6f88 Add test page for crashing IE8 when the testElement in support has a background (will run from the test suite). Supplements #9823. 2011-08-04 18:56:49 -04:00
Dave Methvin
8d5c874227 Merge pull request #416 from gnarf37/ticket_6652
CSS: Remove filter from style when setting opacity to 1 - Fixes #6652 - R
2011-08-04 15:09:31 -07:00
Dave Methvin
5417a2cf6b Merge pull request #417 from rwldrn/9385
Begrudgingly adds chrome detection to jQuery.browser (1.7). Fixes #9385
2011-08-04 14:31:56 -07:00
jaubourg
0ed99097bd Fixes #9854: propagates native statusText onto jqXHR.statusText. statusText in callbacks is still normalized. Unit test added. 2011-07-23 02:39:12 +02:00
Corey Frang
5b0c3060f0 Unit test for #6652 2011-07-13 22:54:25 -05:00
Krinkle
28b470d7d3 Landing pull request 433. Fix testswarm test cases. Fixes #9555.
More Details:
 - https://github.com/jquery/jquery/pull/433
 - http://bugs.jquery.com/ticket/9555
2011-07-12 17:12:07 -04:00
rwldrn
09fe3ea265 Updated version numbers; Fixes #9385 2011-06-23 08:46:26 -04:00
rwldrn
dd93d0eb32 Begrudgingly adds chrome detection to jQuery.browser (1.7). Fixes #9385 2011-06-20 09:57:26 -04:00
timmywil
641ad80211 Attribute hooks do not need to be attached in XML docs. Fixes #9568. 2011-06-13 10:02:13 -04:00
timmywil
db437be6e3 Check classes passed for duplicates. Fixes #9499. 2011-06-07 21:00:44 -04:00
timmywil
a5396bde70 Attach background data to divs as well 2011-05-25 14:01:33 -04:00
timmywil
e5457a5a1f Remove unnecessary background setting in support now that we have the div reversion. Test added. 2011-05-25 13:58:05 -04:00
jaubourg
0f81cf8991 Adds iframe code for #9239. 2011-05-13 17:50:57 +02:00
jaubourg
38de389a8e Adds unit/support.js to unit tests. Still have to test for #8763 has to be done in its own file however, since Firefox refuses to notify global errors in the iframe (attachEvent, window.onerror and script.onerror all fail). 2011-05-10 12:24:36 +02:00