Skip to content

Commit

Permalink
Tests: Properly check $.uiBackCompat in common widget tests
Browse files Browse the repository at this point in the history
The "common widget" tests, checking if a widget doesn't overwrite some
core widget APIs wasn't running as it was incorrectly checking for
`$.uiBackCompat === false` instead of `$.uiBackCompat !== true` after the
default changed in gh-2250.

Fixing the check uncovered that the draggable & sortable modules do
overwrite the `_trigger` method. Add an exception in the test for that;
at this stage of the project we don't plan to change the implementation.

Closes gh-2286
Ref gh-2250
  • Loading branch information
mgol committed Sep 9, 2024
1 parent 54f96ee commit fd1b8a0
Showing 1 changed file with 14 additions and 3 deletions.
17 changes: 14 additions & 3 deletions tests/lib/common.js
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ function testWidgetDefaults( widget, defaults ) {
}

function testWidgetOverrides( widget ) {
if ( $.uiBackCompat === false ) {
if ( $.uiBackCompat !== true ) {
QUnit.test( "$.widget overrides", function( assert ) {
assert.expect( 4 );
$.each( [
Expand All @@ -43,8 +43,19 @@ function testWidgetOverrides( widget ) {
"option",
"_trigger"
], function( i, method ) {
assert.strictEqual( $.ui[ widget ].prototype[ method ],
$.Widget.prototype[ method ], "should not override " + method );

if ( method === "_trigger" &&
/^(?:draggable|sortable): common widget$/
.test( assert.test.module.name ) ) {

// Draggable & sortable modules overwrite _trigger. They
// should not, but we don't plan to change the API at this
// stage of the project.
assert.ok( true, "draggable & sortable modules overwrite _trigger" );
} else {
assert.strictEqual( $.ui[ widget ].prototype[ method ],
$.Widget.prototype[ method ], "should not override " + method );
}
} );
} );
}
Expand Down

0 comments on commit fd1b8a0

Please sign in to comment.