Commit Graph

2284 Commits

Author SHA1 Message Date
Christian Grete
8a734344f2 Core: Support Symbol wrapper objects in jQuery.type
In ECMAScript 2015 (ES6), the native typeof operator returns "symbol"
for Symbol primitives. As it is possible to wrap symbols using the
Object constructor, symbols can be objects as well as any other
primitive type in JavaScript and should be determined by jQuery.type.

Closes gh-2627
2015-10-13 01:18:20 +03:00
Oleg Gaidarenko
39cdb8c9aa Ajax: don't expect cross-origin tests run in envs which not support it
Follow-up to b078a62013
2015-10-13 00:00:38 +03:00
Oleg Gaidarenko
239169bb2e Ajax: improve content-type detection
Fixes gh-2584
Closes gh-2643
2015-10-12 22:38:15 +03:00
Oleg Gaidarenko
d92310050c Event: fix incorrect test
Which was revealed by 03eaadb131 commit,
also do not try to fix typos in data/jquery version
2015-10-12 18:37:04 +03:00
Gary Ye
03eaadb131 Tests:Docs: Fix various typos
* Changes "baar" to "bar" when used with "foo" in readme
  and comments of js files

* mousenter -> mouseenter

Thanks @garysye, @KimTaehee

Closes gh-2613
Closes gh-2601
2015-10-12 18:08:13 +03:00
Dave Methvin
ee0854f85b Event: Move .bind() and .delegate() to deprecated
Fixes gh-2288
Closes gh-2624
2015-10-12 17:32:08 +03:00
Connor Atherton
9748e436ad Tests: Add .extend test for defined accessor properties
Closes gh-2615
2015-10-12 17:19:20 +03:00
Oleg Gaidarenko
b078a62013 Ajax: Mitigate possible XSS vulnerability
Proposed by @jaubourg

Fixes gh-2432
Closes gh-2588
2015-10-12 17:05:18 +03:00
Richard Gibson
f23a64d745 Tests: Use QUnit URL parameter parsing 2015-10-08 23:29:32 -04:00
Richard Gibson
f9af896bb8 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
2015-10-08 23:26:03 -04:00
Michał Gołębiowski
ce3b4a6242 Ajax:Attributes:CSS:Manipulation: Reduce Android 2.3 support
Drop non-critical workarounds for Android 2.3.

Fixes gh-2483
Fixes gh-2505
Closes gh-2581
2015-09-14 21:26:48 +02:00
Michał Gołębiowski
64fd7ef3d0 Tests: Account for Edge in originalEvent UA-sniffs
All other cases where Edge user agent needed to be taken into account
in tests have already been resolved.

Fixes gh-2357
2015-09-14 21:13:44 +02:00
Richard Gibson
d3d8d9751f Tests: Provide equal() arguments in correct order (actual, expected)
Ref 224271982e
Ref f5bf9bc488
2015-09-08 16:28:44 -04:00
Jason Bedard
0e982433eb Data: avoid using delete on DOM nodes
Closes gh-2479
2015-09-08 20:22:54 +02:00
Michał Gołębiowski
1b566d37a2 Tests: Really fix tests in IE 8 this time
IE 8 doesn't have indexOf on arrays. Also, one toLowerCase() was missing. Oops.

This commit is not necessary on master but has been brought here to keep
tests similar in both branches.

(cherry-picked from 1b48eef4ca)
2015-09-08 19:02:35 +02:00
Michał Gołębiowski
5914b10362 Tests: Make basic tests work in IE 8
IE 8 prints tag names in upper case which was breaking some tests.

This commit is not necessary on master but has been brought here to keep
tests similar in both branches.
2015-09-08 18:43:08 +02:00
Michał Gołębiowski
855b0c8c28 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.

Refs 2c7e9c9349
2015-09-08 18:36:42 +02:00
Michał Gołębiowski
2c7e9c9349 Tests: Add simple tests for Android 2.3
Fixes gh-2505
Closes gh-2509
Refs gh-2483
2015-09-08 18:03:49 +02:00
Oleg Gaidarenko
c161eecce0 Tests: more style corrections
Provocated by jscs-dev/node-jscs@2de68c0d83

Closes gh-2578
2015-09-08 04:06:20 +03:00
Oleg Gaidarenko
c8d15a2f9f 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
2015-09-08 04:06:20 +03:00
Thomas Tortorini
3dd3d1357d Effects: Finish should call progress
Fixes gh-2283
Closes gh-2292
2015-09-08 02:40:54 +02:00
Jason Bedard
f5bf9bc488 Data: do not create data cache when fetching single property
Closes gh-2554
2015-09-08 01:55:51 +02:00
Jason Bedard
224271982e Data: Don't expose jQuery.acceptData
jQuery.acceptData is an undocumented internal API that shouldn't be exposed.

Fixes gh-2555
2015-09-08 01:00:31 +02:00
Michał Gołębiowski
02e10082b2 Tests: lower the PHP sleep time in unreleasedXHR.html
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
2015-09-08 00:44:44 +02:00
Daniel Nill
3d7ce0a65f Serialize: Handle arrays with null values
Closes gh-2436
2015-09-07 22:45:23 +02:00
Thomas Tortorini
b7a7dea95f Effects: Remove additional parameters of easings
Fixes gh-2367
Closes gh-2376
2015-09-07 22:07:32 +02:00
Oleg Gaidarenko
e35bdc1a22 Build: correct style tests files which could be automatically corrected 2015-09-07 20:03:50 +03:00
Oleg Gaidarenko
10fdad742a Build: Update jscs and lint files
Fixes gh-2056
2015-09-07 20:03:50 +03:00
Oleg Gaidarenko
7aa46e0df8 Tests: do not define two modules with the same name
Fixes gh-2437
2015-08-16 09:06:13 +03:00
Oleg Gaidarenko
b930d14ce6 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

Fixes gh-2540
2015-08-16 09:02:01 +03:00
Richard Gibson
9d820fbde6 Event: Only check elements for delegation matches
Closes gh-2529
Ref trac-13208
(cherry picked from commit fc2ba2e136)
2015-08-10 10:26:13 -04:00
Oleg Gaidarenko
aabe94edb4 Tests: don't use deprecated argument in test declaration
Closes gh-2507
2015-07-30 20:46:31 +03:00
Bruno Pérel
360a478033 Docs: Fix various spelling mistakes
Closes gh-2487
2015-07-30 15:47:23 +02:00
Jason Bedard
5fe76c663f Data: remove user data in cleanData
Fixes gh-2503
Closes gh-2480
2015-07-28 14:22:03 +02:00
Michał Gołębiowski
6044fb6a73 Ajax: Account for Android 2.3 not firing window.onerror on script errors
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
2015-07-28 13:20:20 +02:00
Michał Gołębiowski
93bee4701d Core: Adjust comments & tests after dropping Safari 6 support
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
2015-07-27 22:14:48 +02:00
Thomas Tortorini
bf48c21d22 Core: .each/.map should accept an undefined/null value
Fixes gh-2267
Closes gh-2363
2015-07-27 19:57:34 +02:00
Michał Gołębiowski
1c59b308d2 Build: Acknowledge Android 2.3 is not ES5-compatible
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
2015-07-20 18:37:26 +02:00
Oleg Gaidarenko
a2ae215d99 Ajax: Remove jsonp callbacks through "jQuery#removeProp" method
Fixes gh-2323
Closes gh-2464
2015-07-13 01:34:09 +03:00
Michał Gołębiowski
dc8ba6af92 Tests: Remove a trailing comma for compatibility with the compat branch 2015-07-08 13:00:38 +02:00
Michał Gołębiowski
8887106702 CSS: Add an integration test for issue gh-1764
Refs gh-1764
Refs gh-2401
Closes gh-2425
2015-07-08 11:54:19 +02:00
Michał Gołębiowski
b60b26e184 CSS: Make .css("width") & .css("height") return fractional values
Fixes gh-1724
Closes gh-2439
2015-07-07 18:09:45 +02:00
Timmy Willison
84ccf2606c Deferred: add .catch handler
Fixes gh-2102
2015-07-06 10:47:30 -04:00
Corey Frang
a44cfa0066 Tests: Lower the checks rounding error
The CSS value rounding error was causig failures on FF and IE.
2015-06-26 20:20:53 -04:00
Corey Frang
b3b2d6c3dd Effects: Adding unit tests for jQuery.Animation
Closes gh-2326
2015-06-26 20:06:03 -04:00
Corey Frang
cdaed15c7e Effects: Add tests for jQuery.Tween 2015-06-26 20:05:25 -04:00
Timmy Willison
b041242223 Offset: add tests for hidden elements + scroll
- Also add comments to hidden/disconnected tests noting
  this is to ensure consistency between branches
2015-06-16 13:28:51 -04:00
Timmy Willison
40dcc76764 Offset: return zeros for disconnected/hidden elements
Fixes gh-2310
Close gh-2396
2015-06-16 10:55:11 -04:00
Timmy Willison
578dcee96a Revert "Offset: allow offset setter to throw for disconnected elements"
This reverts commit 0d11c1182f.
2015-06-16 10:54:52 -04:00
Michał Gołębiowski
e831856490 Tests: Remove test/data/ua.txt
The file was used by $.browser tests but $.browser now doesn't exists
in Core and this file hasn't been updated for a few years.

Fixes gh-2398
2015-06-16 16:25:16 +02:00
Michał Gołębiowski
5a1217e401 Tests: Remove Edge version from the user agent
The version will change in the future, matching by /edge\//i is enough

Refs 8e111df641
2015-06-16 14:44:24 +02:00
Michał Gołębiowski
8e111df641 Tests: Add Microsoft Edge results (from Windows 10 build 10130)
The Microsoft Edge user agent contains "Chrome" so it needs to be checked
before Chrome.
2015-06-14 01:56:51 +02:00
Michał Gołębiowski
c17543fd3c Tests: Correct a typo in the regex matching Safari 8 2015-06-14 00:37:31 +02:00
Michał Gołębiowski
bb026fc12c Core: Make jQuery objects iterable
Make iterating over jQuery objects possible using ES 2015 for-of:

    for ( node of $( "<div id=narwhal>" ) ) {
        console.log( node.id ); // "narwhal"
    }

Fixes gh-1693
2015-06-13 23:14:36 +02:00
Michał Gołębiowski
9c8a3ecdc4 Build: Refactor Node smoke tests
Utilize the assert module, avoid inline JSHint comments.
2015-06-13 23:08:19 +02:00
Michał Gołębiowski
1556c4661a Build: Update grunt-contrib-jshint 2015-06-13 22:45:52 +02:00
Michał Gołębiowski
d471842b3e CSS: Don't cache unrecognized CSS property names
This prevents jQuery from caching a prefixed property name if provided
directly by the user, e.g. the following code:

	elem.css( "msTransform", "translate(5px, 2px)" );

should not prevent one from from later setting the transition directly:

	elem.css( "transform", "translate(5px, 2px)" );

on a browser not understanding the unprefixed version which is the case
for Safari 8 & transform.

Fixes gh-2015
Closes gh-2298
2015-06-01 14:05:05 +02:00
Oleg Gaidarenko
6df669f0fb Event: remove outdated originalEvent hack
Closes gh-2335
Ref 7475d5debe
2015-05-29 20:32:59 +03:00
Gabriel Schulhof
7475d5debe Event: Remove fake originalEvent from jQuery.Event.simulate
Fixes gh-2300
Closes gh-2303
2015-05-29 19:56:06 +03:00
Oleg Gaidarenko
0705be4750 Event: remove deprecated event aliases
Fixes gh-2286
Closes gh-2287
Ref trac-11733
2015-05-19 13:43:34 +03:00
Oleg Gaidarenko
c074006a69 Event: provide verbose comment for focus(in | out) & rename support prop
Closes gh-2312
2015-05-19 13:43:34 +03:00
Richard McDaniel
2d715940b9 Offset: account for scroll when calculating position
Fixes gh-1708
Close gh-1714
2015-05-12 10:34:57 -04:00
Timmy Willison
c252c5fac2 Core: remove custom ready event
Fixes gh-2264
Close gh-2265
2015-05-12 10:26:21 -04:00
Timmy Willison
20aaed367f Attributes: add SVG class manipulation
- Note: support for SVG is limited in jQuery,
  but this is one area where the cost vs benefit ratio
  was acceptable.

Fixes gh-2199
Close gh-2268
2015-05-12 10:13:46 -04:00
Timmy Willison
56bb677725 Data: remove the expando when there's no more data
Fixes gh-1760
Close gh-2271
2015-05-12 10:09:40 -04:00
Timmy Willison
16713fb609 Tests: fix tests in accordance with new :visible behavior 2015-05-12 09:58:55 -04:00
Timmy Willison
79bcb29132 CSS: fix :visible/:hidden selectors for inline element w/ content
- Reverts behavior from 10399dd, which we never released.
  BR and inline elements are considered visible.
- The possibility of dropping .offsetWidth and .offsetHeight
  was debunked by this perf:
  http://jsperf.com/visible-hidden-and-getclientrects

Fixes gh-2227
Close gh-2281
2015-05-12 09:14:16 -04:00
Richard Gibson
86419b10bf CSS: Ignore the CSS cascade in show()/hide()/etc.
Fixes gh-1767
Fixes gh-2071
Closes gh-2180
2015-05-11 13:00:49 -04:00
Timmy Willison
6d7ef56ed3 Effects: add tests for jQuery.easing._default in Animation and Tween
Ref gh-2219
2015-05-05 11:22:40 -07:00
Timmy Willison
5f2ea40258 Effects: set default easing using jQuery.easing._default
Fixes gh-2219
Close gh-2218
2015-05-05 10:24:20 -07:00
Timmy Willison
0d11c1182f Offset: allow offset setter to throw for disconnected elements
Fixes gh-2114
2015-05-05 08:53:17 -07:00
Timmy Willison
6176567361 Offset: remove ownerDocument check in offset getter
Fixes gh-2115
2015-05-05 08:31:39 -07:00
Arthur Stolyar
1617479fcf Offset: Fix .offset() to correctly work with ShadowDOM
Fixes gh-1784
Close gh-2043
2015-05-05 08:16:29 -07:00
Timmy Willison
add85afed5 Selector: add test for jQuery.unique() alias 2015-05-05 07:59:12 -07:00
Timmy Willison
e1090c3d2b Selector: add jQuery.uniqueSort; deprecate jQuery.unique
Fixes gh-2228
2015-05-04 15:27:12 -07:00
Timmy Willison
172cad80ac Data: camelCasing should not ignore case
Fixes gh-2070
2015-05-04 10:49:21 -04:00
Timmy Willison
0e790985a7 Data: always camelCase keys in .data()
- This effectively implements our "Embrace HTML5" option
- Related: http://goo.gl/GcQAtn

Fixes gh-2257
2015-05-04 10:27:30 -04:00
Timmy Willison
2862a07af6 Data: do not include digits when camelCasing
Fixes gh-1751
2015-05-03 08:25:19 -04:00
Oleg Gaidarenko
fac67a9842 Event: remove guard for falsy handler argument of jQuery#on method
Since we don't have this in off method and its a common perception
that this is a rudiment code

Ref gh-2248
Closes gh-2249
2015-05-03 13:28:27 +03:00
Richard Gibson
225bde37c9 Manipulation: Make an HTML interception point
Fixes gh-1747
Closes gh-2203
2015-04-30 13:15:33 -04:00
Richard Gibson
4b27ae16a2 Manipulation: Detect sneaky no-content replaceWith input
Fixes gh-2204
Ref 642e9a4557
Closes gh-1752
Closes gh-2206
2015-04-30 11:36:38 -04:00
Timmy Willison
1541664582 Core: add workaround for iOS JIT error in isArrayLike
Fixes gh-2145
2015-04-29 18:02:45 -04:00
Michał Gołębiowski
ab40725879 Core: Test all factory use cases from intro.js
There is a lot of logic in intro.js; now we test four cases:
1. (implicitly, via QUnit tests) A real browser with window being the global
2. Browserify where there are both global & window variables.
3. Node with jsdom where window is passed manually to the jQuery factory.
4. Pure Node with incorrect window passed; jQuery should throw then.

Previously the second & fourth case was not tested and the third was tested
in a way that interfered with the main test environment.

We now also test if in the Browserify case we're not creating a jQuery global
by default.

Fixes gh-2181
Closes gh-2234
2015-04-27 22:44:47 +02:00
Michał Gołębiowski
ff18d8e206 Tests: Increase QUnit timeout
Android 2.3 is very slow & times out a lot in async tests, they have to be
restarted multiple times to settle. Long test execution is not a huge problem
as Android 2.3 is tested only periodically during the night, unstable tests
are a bigger problem. This might mitigate that.

In a regular scenario almost all tests should pass so increasing the timeout
for all browsers shouldn't have a huge impact on overall test time.

Closes gh-2232
2015-04-27 20:27:05 +02:00
Richard Gibson
002240a6eb Deferred: Always handle progress callbacks before done/fail
Fixes gh-2013
Fixes gh-2010
Closes gh-2210
2015-04-22 15:24:37 -04:00
Timmy Willison
2905961bf7 Attributes: revert returning null for non-existant attributes
Ref https://github.com/jquery/jquery/issues/2118
2015-03-30 15:32:54 -04:00
Dave Methvin
7b09235cee Wrap: Support .unwrap( selector) for selective unwrapping
Fixes gh-1744
Closes gh-2003
2015-03-30 13:38:40 -04:00
Michał Gołębiowski
95c0a10e15 Data: Drop the tests relying on applets
BrowserStack regularly has outdated Java in their IE instances causing our
data tests to hang & give no output. Skip the tests that create applets,
applets are treated in the same way as an embed elements which we're already
testing.

Fixes gh-1938
Closes gh-2166
2015-03-25 23:01:57 +01:00
Michał Gołębiowski
62ae2d0fb7 Offset: Round offset value for the sake of floating errors
IE10+ may return not exactly the offset.top value set in an offset callback
if parent has fractional top offset itself. Checking for being close to the
desired result fixes the test error.

Fixes gh-2147
2015-03-23 18:14:37 +01:00
Richard Gibson
555a50d340 Deferred: Backwards-compatible standards interoperability
Fixes gh-1722
Closes gh-1996
2015-03-20 02:00:17 -04:00
Richard Gibson
e22ef5d901 Tests: Expand CSS relative adjustment tolerance for IE
Ref 48be675200
2015-03-16 23:49:48 -04:00
Richard Gibson
48be675200 Tests: Fix CSS relative adjustment test for round-down browsers
Ref 9b03f6df88
2015-03-16 23:05:36 -04:00
Timmy Willison
7632b7454b Attributes: revert returning null for non-elements 2015-03-16 14:11:38 -04:00
Timmy Willison
5dc4616ca0 Attributes: fix failing test for new return value 2015-03-16 11:52:05 -04:00
Winston Howes
aaeed53e9f Attributes: return null when attribute does not exist
Fixes gh-2118
Close gh-2129
2015-03-16 11:21:24 -04:00
Rick Waldron
332fd941b4 Data: restore explicit data removal of private data in cleanData.
Fixes gh-2127
Closes gh-2132
2015-03-09 13:51:16 -04:00
Mr21
9b03f6df88 CSS: Support relative adjustment in any applicable unit
Fixes gh-1711
Closes gh-2011
2015-03-09 12:00:10 -04:00
Stephen Edgar
34da7d5529 Build: remove deprecated JSHint options
JSHint no longer supports `onevar`, `smarttabs` or `trailing` options.

Closes gh-2029
2015-03-08 06:30:01 +03:00
Rick Waldron
d702b7637a Data: move element cache to element[expando]
- avoid explicit data.discard() cleanup calls
- explicitly remove the data.events property, only when private data exists
- reduces code footprint

Fixes gh-1734
Close gh-1428
2015-03-04 17:26:47 -05:00
Oleg Gaidarenko
8356281bed Tests: make top of the HTML suite compliant with style guide
See http://contribute.jquery.org/style-guide/html/

Closes gh-2098
2015-02-19 11:30:57 +03:00