mirror of
https://github.com/jquery/jquery.git
synced 2025-01-10 18:24:24 +00:00
Core: fix isPlainObject(Object.create) test in IE
This commit is contained in:
parent
b18894720a
commit
88b91af26e
@ -328,22 +328,15 @@ QUnit.test( "type for `Symbol`", function( assert ) {
|
||||
} );
|
||||
|
||||
QUnit.asyncTest( "isPlainObject", function( assert ) {
|
||||
assert.expect( 20 );
|
||||
assert.expect( 18 );
|
||||
|
||||
var pass, iframe, doc, parentObj, childObj, deep,
|
||||
var pass, iframe, doc, deep,
|
||||
fn = function() {};
|
||||
|
||||
// The use case that we want to match
|
||||
assert.ok( jQuery.isPlainObject( {} ), "{}" );
|
||||
assert.ok( jQuery.isPlainObject( new window.Object() ), "new Object" );
|
||||
|
||||
parentObj = { foo: "bar" };
|
||||
childObj = Object.create( parentObj );
|
||||
|
||||
assert.ok( !jQuery.isPlainObject( childObj ), "isPlainObject(Object.create({}))" );
|
||||
childObj.bar = "foo";
|
||||
assert.ok( !jQuery.isPlainObject( childObj ), "isPlainObject(Object.create({}))" );
|
||||
|
||||
// Not objects shouldn't be matched
|
||||
assert.ok( !jQuery.isPlainObject( "" ), "string" );
|
||||
assert.ok( !jQuery.isPlainObject( 0 ) && !jQuery.isPlainObject( 1 ), "number" );
|
||||
@ -417,6 +410,17 @@ QUnit.asyncTest( "isPlainObject", function( assert ) {
|
||||
}
|
||||
} );
|
||||
|
||||
QUnit[ typeof Object.create !== "undefined" ? "test" : "skip" ]( "isPlainObject(Object.create()", function( assert ) {
|
||||
assert.expect( 2 );
|
||||
|
||||
var parentObj = { foo: "bar" },
|
||||
childObj = Object.create( parentObj );
|
||||
|
||||
assert.ok( !jQuery.isPlainObject( childObj ), "isPlainObject(Object.create({}))" );
|
||||
childObj.bar = "foo";
|
||||
assert.ok( !jQuery.isPlainObject( childObj ), "isPlainObject(Object.create({}))" );
|
||||
} );
|
||||
|
||||
//
|
||||
QUnit[ typeof Symbol === "function" ? "test" : "skip" ]( "isPlainObject(Symbol)", function( assert ) {
|
||||
assert.expect( 2 );
|
||||
|
Loading…
Reference in New Issue
Block a user