Commit Graph

65 Commits

Author SHA1 Message Date
Richard Gibson
fb98ea49b6 Tests: Use QUnit URL parameter parsing
(cherry picked from commit f23a64d745)
2015-10-08 23:32:05 -04:00
Richard Gibson
5fb689debc Tests: Add dummy modules when running basic tests
Without this, other modules don't appear in the QUnit module picker.

Ref 855b0c8c28
Closes gh-2582

(cherry picked from commit f9af896bb8)
2015-10-08 23:32:05 -04:00
Michał Gołębiowski
1b48eef4ca Tests: Really fix tests in IE 8 this time
IE 8 doesn't have indexOf on arrays. Also, one toLowerCase() was missing. Oops.
2015-09-08 18:59:01 +02:00
Michał Gołębiowski
06454d118f Tests: Don't load non-basic tests when basic module is selected
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.

(cherry-picked from 855b0c8c28)

Refs 2c7e9c9349
2015-09-08 18:45:58 +02:00
Michał Gołębiowski
c7d458fb9e Tests: Backport basic tests from master
Commit 2c7e9c9 added the basic test suite; these are the only tests that
are now run on Android 2.3 on master. On compat we're keeping full Android 2.3
support for now but the tests and the testswarm basic run mode have been
cherry-picked anyway to reduce the divergence between branches.

(cherry-picked from 2c7e9c9349)

Fixes gh-2505
Closes gh-2509
Refs gh-2483
2015-09-08 18:10:51 +02:00
Oleg Gaidarenko
2f0cedc997 Tests: further improvements QUnit 2.0 migration
* Remove QUnit jshint globals
* Extend QUnit.assert methods
* Use assert.async instead of start/stop/done

Ref b930d14ce6
Ref c8d15a2f9f
2015-09-08 04:15:54 +03:00
Oleg Gaidarenko
4543815eed Tests: Partially use new qunit interface
http://qunitjs.com/upgrade-guide-2.x/

For most of the boring work was used
https://github.com/apsdehal/qunit-migrate package

However, it can't update local qunit helpers, plus in some places
old QUnit.asyncTest signature is still used

Ref b930d14ce6
Fixes gh-2540
2015-09-07 20:14:59 +03:00
Oleg Gaidarenko
20ddbe4f59 Build: Update jscs and lint files
Ref 10fdad742a
Fixes gh-2056
2015-09-07 20:14:50 +03:00
Corey Frang
0ff805772a Effects: Adding unit tests for jQuery.Animation
Closes gh-2340

(cherry picked from commit b3b2d6c3dd)

Conflicts:
	src/effects.js
2015-06-26 20:12:42 -04:00
Corey Frang
6b10f9d7e9 Effects: Add tests for jQuery.Tween
Conflicts:
	src/selector-native.js
	test/index.html
	test/unit/effects.js
2015-06-26 20:11:55 -04:00
Timmy Willison
57652eecd9 Build: fix tests in AMD mode 2014-12-10 10:18:59 -05:00
Timmy Willison
91e06e9aeb Build: update grunt-jscs-checker and pass with the new rules
Conflicts:
	build/tasks/build.js
	src/ajax/xhr.js
	src/attributes/classes.js
	src/attributes/prop.js
	src/attributes/val.js
	src/core/init.js
	src/core/ready.js
	src/css.js
	src/css/curCSS.js
	src/css/defaultDisplay.js
	src/data.js
	src/data/var/dataPriv.js
	src/data/var/dataUser.js
	src/dimensions.js
	src/effects.js
	src/event.js
	src/manipulation.js
	src/offset.js
	src/queue.js
	src/selector-native.js
	test/data/testrunner.js
2014-07-17 11:08:37 -07:00
Oleg Gaidarenko
f5ea571753 Build: Use jscs to check test helpers
Also fix issues found by jscs

Conflicts:
	test/data/testrunner.js
2014-04-15 17:46:25 +04:00
Oleg Gaidarenko
6cd81b8802 Tests: Remove Sizzle intergration tests
Fixes #14818

Conflicts:
	test/data/testrunner.js
2014-04-15 17:46:25 +04:00
Timmy Willison
c2e0dbdaa5 Manage bower dependencies with grunt-bowercopy
Tracked bower dependencies are located at "src/sizzle" and "test/libs".
The source-destination mapping is in the Gruntfile.

When updating a bower dependency, update the version in bower.json, run
`grunt bower`, and then commit the result. When adding a dependency,
update the bowercopy task accordingly.

Fixes #14615.
Closes gh-1452.

Conflicts:
	bower.json
	test/index.html
2013-12-06 16:14:27 -05:00
Timmy Willison
a9f5946294 Use grunt and bower packages as local dependencies. Close gh-1433. 2013-11-14 10:18:12 -05:00
Richard Gibson
3774ee49e0 No ticket: Fix subproject iframe tests
(cherry picked from commit 13d58a9bec)
2013-10-11 15:08:58 -04:00
Timmy Willison
be1e4eee60 Convert testrunner to an AMD module and ensure jQuery is on the page when executing the testrunner (another race condition amplified by swarm)
Conflicts:
	test/data/testinit.js
	test/data/testrunner.js
2013-09-06 17:23:45 -04:00
Timmy Willison
d14904d083 Move test loader to testinit.js. Fix race condition with dependency loading. 2013-09-06 17:23:45 -04:00
Richard Gibson
6a6604b785 No ticket: Hide the testing-support jQuery from tests
(cherry picked from commit 0c18520923)

Conflicts:

	test/data/testrunner.js
2013-09-03 11:13:20 -04:00
Timmy Willison
217cbb7109 AMD-ify jQuery sourcegit s! Woo! Fixes #14113, #14163.
Conflicts:
	Gruntfile.js
	README.md
	src/ajax.js
	src/ajax/xhr.js
	src/attributes.js
	src/core.js
	src/css.js
	src/data.js
	src/effects.js
	src/event.js
	src/manipulation.js
	src/offset.js
	src/selector-native.js
	src/traversing.js
	test/unit/core.js
	test/unit/data.js
2013-08-15 15:49:49 -04:00
Timmy Willison
d2435ead36 Update jshintrc to conform to new style guide. Conform to onevar and unused in tests. Fixes #13755.
Conflicts:
	src/.jshintrc
	src/data.js
	test/unit/attributes.js
	test/unit/core.js
	test/unit/data.js
	test/unit/event.js
	test/unit/manipulation.js
	test/unit/queue.js
	test/unit/traversing.js
	test/unit/wrap.js
2013-04-09 12:21:54 -04:00
jrburke
b6dd1c67a6 Remove the define.amd.jQuery check, close gh-1150.
Cherry picked from 2.0 master 34c4e122a3

Conflicts:
	src/exports.js
2013-04-03 20:10:42 -04: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
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
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
Sai Wong
2b0e720406 Fix #12048. Set attributes for XML fragments. Close gh-965. 2012-10-20 15:27:43 -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
0f553ed0ca Fix #12282. IE has premature .readyState == "interactive". Close gh-901. 2012-08-20 08:16:07 -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
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
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
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