corrade-http-templates – Blame information for rev 57

Subversion Repositories:
Rev:
Rev Author Line No. Line
57 office 1 define( [
2 "qunit",
3 "jquery",
4 "./helper",
5 "ui/widgets/sortable"
6 ], function( QUnit, $, testHelper ) {
7  
8 QUnit.module( "sortable: methods" );
9  
10 QUnit.test( "init", function( assert ) {
11 assert.expect( 5 );
12  
13 $( "<div></div>" ).appendTo( "body" ).sortable().remove();
14 assert.ok( true, ".sortable() called on element" );
15  
16 $( [] ).sortable();
17 assert.ok( true, ".sortable() called on empty collection" );
18  
19 $( "<div></div>" ).sortable();
20 assert.ok( true, ".sortable() called on disconnected DOMElement" );
21  
22 $( "<div></div>" ).sortable().sortable( "option", "foo" );
23 assert.ok( true, "arbitrary option getter after init" );
24  
25 $( "<div></div>" ).sortable().sortable( "option", "foo", "bar" );
26 assert.ok( true, "arbitrary option setter after init" );
27 } );
28  
29 QUnit.test( "destroy", function( assert ) {
30 assert.expect( 4 );
31 $( "<div></div>" ).appendTo( "body" ).sortable().sortable( "destroy" ).remove();
32 assert.ok( true, ".sortable('destroy') called on element" );
33  
34 $( [] ).sortable().sortable( "destroy" );
35 assert.ok( true, ".sortable('destroy') called on empty collection" );
36  
37 $( "<div></div>" ).sortable().sortable( "destroy" );
38 assert.ok( true, ".sortable('destroy') called on disconnected DOMElement" );
39  
40 var expected = $( "<div></div>" ).sortable(),
41 actual = expected.sortable( "destroy" );
42 assert.equal( actual, expected, "destroy is chainable" );
43 } );
44  
45 QUnit.test( "enable", function( assert ) {
46 assert.expect( 5 );
47  
48 var el, actual, expected;
49  
50 el = $( "#sortable" ).sortable( { disabled: true } );
51  
52 testHelper.sort( assert, $( "li", el )[ 0 ], 0, 44, 0, ".sortable({ disabled: true })" );
53  
54 el.sortable( "enable" );
55 assert.equal( el.sortable( "option", "disabled" ), false, "disabled option getter" );
56  
57 el.sortable( "destroy" );
58 el.sortable( { disabled: true } );
59 el.sortable( "option", "disabled", false );
60 assert.equal( el.sortable( "option", "disabled" ), false, "disabled option setter" );
61  
62 testHelper.sort( assert, $( "li", el )[ 0 ], 0, 44, 2, ".sortable('option', 'disabled', false)" );
63  
64 expected = $( "<div></div>" ).sortable(),
65 actual = expected.sortable( "enable" );
66 assert.equal( actual, expected, "enable is chainable" );
67 } );
68  
69 QUnit.test( "disable", function( assert ) {
70 assert.expect( 9 );
71  
72 var chainable,
73 element = $( "#sortable" ).sortable( { disabled: false } );
74  
75 testHelper.sort( assert, $( "li", element )[ 0 ], 0, 44, 2, ".sortable({ disabled: false })" );
76  
77 chainable = element.sortable( "disable" );
78 testHelper.sort( assert, $( "li", element )[ 0 ], 0, 44, 0, "disabled.sortable getter" );
79  
80 element.sortable( "destroy" );
81  
82 element.sortable( { disabled: false } );
83 testHelper.sort( assert, $( "li", element )[ 0 ], 0, 44, 2, ".sortable({ disabled: false })" );
84 element.sortable( "option", "disabled", true );
85 assert.equal( element.sortable( "option", "disabled" ), true, "disabled option setter" );
86  
87 assert.lacksClasses( element.sortable( "widget" ), "ui-state-disabled" );
88 assert.ok( !element.sortable( "widget" ).attr( "aria-disabled" ), "element does not get aria-disabled" );
89 assert.hasClasses( element.sortable( "widget" ), "ui-sortable-disabled" );
90  
91 testHelper.sort( assert, $( "li", element )[ 0 ], 0, 44, 0, ".sortable('option', 'disabled', true)" );
92 assert.equal( chainable, element, "disable is chainable" );
93 } );
94  
95 QUnit.test( "refresh() should update the positions of initially empty lists (see #7498)", function( assert ) {
96 assert.expect( 1 );
97  
98 var changeCount = 0,
99 element = $( "#qunit-fixture" ).html( "<ul></ul>" ).find( "ul" );
100  
101 element
102 .css( {
103 "float": "left",
104 width: "100px"
105 } )
106 .sortable( {
107 change: function() {
108 changeCount++;
109 }
110 } )
111 .append( "<li>a</li><li>a</li>" )
112 .find( "li" )
113 .css( {
114 "float": "left",
115 width: "50px",
116 height: "50px"
117 } );
118  
119 element.sortable( "refresh" );
120  
121 // Switch the order of the two li elements
122 element.find( "li" ).eq( 0 ).simulate( "drag", {
123 dx: 55,
124 moves: 15
125 } );
126  
127 assert.equal( changeCount, 1 );
128 } );
129  
130 } );