aboutsummaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorMichał Gołębiowski-Owczarek <m.goleb@gmail.com>2021-11-08 18:21:03 +0100
committerGitHub <noreply@github.com>2021-11-08 18:21:03 +0100
commitefe3b225179f8f2f3f2c05484f7757f90bc5a27b (patch)
tree95b0fa80529db6830cbf6542d99039189157b0c9 /tests
parent85fba3f107a4a03bdac43f06c81ab2f2a3c2fea5 (diff)
downloadjquery-ui-efe3b225179f8f2f3f2c05484f7757f90bc5a27b.tar.gz
jquery-ui-efe3b225179f8f2f3f2c05484f7757f90bc5a27b.zip
Sortable: Allow 0-height containers to be sortable as in 1.12.1
Note that container specific events will not fire when the dragged element is interacting with zero height containers. Fixes gh-1998 Closes gh-2008 Co-authored-by: A. Wells <borgboyone@users.noreply.github.com>
Diffstat (limited to 'tests')
-rw-r--r--tests/unit/sortable/core.js53
1 files changed, 53 insertions, 0 deletions
diff --git a/tests/unit/sortable/core.js b/tests/unit/sortable/core.js
index 90ec1bd76..2224f04ec 100644
--- a/tests/unit/sortable/core.js
+++ b/tests/unit/sortable/core.js
@@ -42,4 +42,57 @@ QUnit.test( "ui-sortable-handle applied to appropriate element", function( asser
assert.equal( el.find( ".ui-sortable-handle" ).length, 0, "class name removed on destroy" );
} );
+// gh-1998
+QUnit.test( "drag & drop works with a zero-height container", function( assert ) {
+ var ready = assert.async();
+ assert.expect( 3 );
+
+ var el = $( "<ul class='list-gh-1998'>\n" +
+ " <style>" +
+ " .list-gh-1998 {\n" +
+ " margin: 0;\n" +
+ " padding: 0;\n" +
+ " }\n" +
+ " .list-item-gh-1998 {\n" +
+ " float: left;\n" +
+ " display: block;\n" +
+ " width: 100px;\n" +
+ " height: 100px;\n" +
+ " }\n" +
+ " </style>\n" +
+ " <li class='list-item-gh-1998'>Item 1</li>\n" +
+ " <li class='list-item-gh-1998'>Item 2</li>\n" +
+ " <li class='list-item-gh-1998'>Item 3</li>\n" +
+ "</ul>" )
+ .sortable()
+ .appendTo( "#qunit-fixture" );
+
+ function step1() {
+ el.find( "li" ).eq( 0 ).simulate( "drag", {
+ dx: 100,
+ dy: 3,
+ moves: 3
+ } );
+ setTimeout( step2 );
+ }
+
+ function step2() {
+ el.find( "li" ).eq( 2 ).simulate( "drag", {
+ dx: -200,
+ dy: -3,
+ moves: 3
+ } );
+ setTimeout( step3 );
+ }
+
+ function step3() {
+ assert.equal( el.find( "li" ).eq( 0 ).text(), "Item 3" );
+ assert.equal( el.find( "li" ).eq( 1 ).text(), "Item 2" );
+ assert.equal( el.find( "li" ).eq( 2 ).text(), "Item 1" );
+ ready();
+ }
+
+ step1();
+} );
+
} );