Merge branch 'master' into PROT-9-webservice
[proteocache.git] / webapp / resources / datatables-1.9.4 / media / unit_testing / tests_onhold / 1_dom / 2746-stable-sort.js
diff --git a/webapp/resources/datatables-1.9.4/media/unit_testing/tests_onhold/1_dom/2746-stable-sort.js b/webapp/resources/datatables-1.9.4/media/unit_testing/tests_onhold/1_dom/2746-stable-sort.js
new file mode 100755 (executable)
index 0000000..fbd3cf7
--- /dev/null
@@ -0,0 +1,199 @@
+// DATA_TEMPLATE: dom_data
+oTest.fnStart( "2746 - Stable sorting" );
+
+$(document).ready( function () {
+       $('#example').dataTable();
+       
+       oTest.fnTest( 
+               "Initial sort",
+               null,
+               function () {
+                       var ret =
+                               $('#example tbody tr:eq(0) td:eq(0)').html() == 'Gecko' &&
+                               $('#example tbody tr:eq(1) td:eq(0)').html() == 'Gecko' &&
+                               $('#example tbody tr:eq(0) td:eq(1)').html() == 'Firefox 1.0' &&
+                               $('#example tbody tr:eq(1) td:eq(1)').html() == 'Firefox 1.5' &&
+                               $('#example tbody tr:eq(2) td:eq(1)').html() == 'Firefox 2.0';
+                       return ret;
+               }
+       );
+       
+       oTest.fnTest( 
+               "Reserve initial sort",
+               function () {
+                       $('#example thead th:eq(0)').click();
+               },
+               function () {
+                       var ret =
+                               $('#example tbody tr:eq(0) td:eq(0)').html() == 'Webkit' &&
+                               $('#example tbody tr:eq(1) td:eq(0)').html() == 'Webkit' &&
+                               $('#example tbody tr:eq(0) td:eq(1)').html() == 'Safari 1.2' &&
+                               $('#example tbody tr:eq(1) td:eq(1)').html() == 'Safari 1.3' &&
+                               $('#example tbody tr:eq(2) td:eq(1)').html() == 'Safari 2.0';
+                       return ret;
+               }
+       );
+       
+       oTest.fnTest( 
+               "Reserve to go back to initial sort sort",
+               function () {
+                       $('#example thead th:eq(0)').click();
+               },
+               function () {
+                       var ret =
+                               $('#example tbody tr:eq(0) td:eq(0)').html() == 'Gecko' &&
+                               $('#example tbody tr:eq(1) td:eq(0)').html() == 'Gecko' &&
+                               $('#example tbody tr:eq(0) td:eq(1)').html() == 'Firefox 1.0' &&
+                               $('#example tbody tr:eq(1) td:eq(1)').html() == 'Firefox 1.5' &&
+                               $('#example tbody tr:eq(2) td:eq(1)').html() == 'Firefox 2.0';
+                       return ret;
+               }
+       );
+       
+       oTest.fnTest( 
+               "Reserve initial sort again",
+               function () {
+                       $('#example thead th:eq(0)').click();
+               },
+               function () {
+                       var ret =
+                               $('#example tbody tr:eq(0) td:eq(0)').html() == 'Webkit' &&
+                               $('#example tbody tr:eq(1) td:eq(0)').html() == 'Webkit' &&
+                               $('#example tbody tr:eq(0) td:eq(1)').html() == 'Safari 1.2' &&
+                               $('#example tbody tr:eq(1) td:eq(1)').html() == 'Safari 1.3' &&
+                               $('#example tbody tr:eq(2) td:eq(1)').html() == 'Safari 2.0';
+                       return ret;
+               }
+       );
+       
+       oTest.fnTest( 
+               "And once more back to the initial sort",
+               function () {
+                       $('#example thead th:eq(0)').click();
+               },
+               function () {
+                       var ret =
+                               $('#example tbody tr:eq(0) td:eq(0)').html() == 'Gecko' &&
+                               $('#example tbody tr:eq(1) td:eq(0)').html() == 'Gecko' &&
+                               $('#example tbody tr:eq(0) td:eq(1)').html() == 'Firefox 1.0' &&
+                               $('#example tbody tr:eq(1) td:eq(1)').html() == 'Firefox 1.5' &&
+                               $('#example tbody tr:eq(2) td:eq(1)').html() == 'Firefox 2.0';
+                       return ret;
+               }
+       );
+       
+       oTest.fnTest( 
+               "Sort on second column",
+               function () {
+                       $('#example thead th:eq(1)').click();
+               },
+               function () {
+                       var ret =
+                               $('#example tbody tr:eq(0) td:eq(0)').html() == 'Other browsers' &&
+                               $('#example tbody tr:eq(1) td:eq(0)').html() == 'Trident' &&
+                               $('#example tbody tr:eq(0) td:eq(1)').html() == 'All others' &&
+                               $('#example tbody tr:eq(1) td:eq(1)').html() == 'AOL browser (AOL desktop)' &&
+                               $('#example tbody tr:eq(2) td:eq(1)').html() == 'Camino 1.0';
+                       return ret;
+               }
+       );
+       
+       oTest.fnTest( 
+               "Reserve sort on second column",
+               function () {
+                       $('#example thead th:eq(1)').click();
+               },
+               function () {
+                       var ret =
+                               $('#example tbody tr:eq(0) td:eq(0)').html() == 'Gecko' &&
+                               $('#example tbody tr:eq(1) td:eq(0)').html() == 'Webkit' &&
+                               $('#example tbody tr:eq(0) td:eq(1)').html() == 'Seamonkey 1.1' &&
+                               $('#example tbody tr:eq(1) td:eq(1)').html() == 'Safari 3.0' &&
+                               $('#example tbody tr:eq(2) td:eq(1)').html() == 'Safari 2.0';
+                       return ret;
+               }
+       );
+       
+       oTest.fnTest( 
+               "And back to asc sorting on second column",
+               function () {
+                       $('#example thead th:eq(1)').click();
+               },
+               function () {
+                       var ret =
+                               $('#example tbody tr:eq(0) td:eq(0)').html() == 'Other browsers' &&
+                               $('#example tbody tr:eq(1) td:eq(0)').html() == 'Trident' &&
+                               $('#example tbody tr:eq(0) td:eq(1)').html() == 'All others' &&
+                               $('#example tbody tr:eq(1) td:eq(1)').html() == 'AOL browser (AOL desktop)' &&
+                               $('#example tbody tr:eq(2) td:eq(1)').html() == 'Camino 1.0';
+                       return ret;
+               }
+       );
+       
+       oTest.fnTest( 
+               "Sort on third column, having now sorted on second",
+               function () {
+                       $('#example thead th:eq(2)').click();
+               },
+               function () {
+                       var ret =
+                               $('#example tbody tr:eq(0) td:eq(0)').html() == 'Other browsers' &&
+                               $('#example tbody tr:eq(1) td:eq(0)').html() == 'Misc' &&
+                               $('#example tbody tr:eq(0) td:eq(1)').html() == 'All others' &&
+                               $('#example tbody tr:eq(1) td:eq(1)').html() == 'Dillo 0.8' &&
+                               $('#example tbody tr:eq(2) td:eq(1)').html() == 'NetFront 3.1';
+                       return ret;
+               }
+       );
+       
+       oTest.fnTest( 
+               "Reserve sort on third column",
+               function () {
+                       $('#example thead th:eq(2)').click();
+               },
+               function () {
+                       var ret =
+                               $('#example tbody tr:eq(0) td:eq(0)').html() == 'Misc' &&
+                               $('#example tbody tr:eq(1) td:eq(0)').html() == 'Trident' &&
+                               $('#example tbody tr:eq(0) td:eq(1)').html() == 'IE Mobile' &&
+                               $('#example tbody tr:eq(1) td:eq(1)').html() == 'Internet Explorer 7' &&
+                               $('#example tbody tr:eq(2) td:eq(1)').html() == 'AOL browser (AOL desktop)';
+                       return ret;
+               }
+       );
+       
+       oTest.fnTest( 
+               "Return sorting on third column to asc",
+               function () {
+                       $('#example thead th:eq(2)').click();
+               },
+               function () {
+                       var ret =
+                               $('#example tbody tr:eq(0) td:eq(0)').html() == 'Other browsers' &&
+                               $('#example tbody tr:eq(1) td:eq(0)').html() == 'Misc' &&
+                               $('#example tbody tr:eq(0) td:eq(1)').html() == 'All others' &&
+                               $('#example tbody tr:eq(1) td:eq(1)').html() == 'Dillo 0.8' &&
+                               $('#example tbody tr:eq(2) td:eq(1)').html() == 'NetFront 3.1';
+                       return ret;
+               }
+       );
+       
+       oTest.fnTest( 
+               "Sort on first column having sorted on second then third columns",
+               function () {
+                       $('#example thead th:eq(0)').click();
+               },
+               function () {
+                       var ret =
+                               $('#example tbody tr:eq(0) td:eq(0)').html() == 'Gecko' &&
+                               $('#example tbody tr:eq(1) td:eq(0)').html() == 'Gecko' &&
+                               $('#example tbody tr:eq(0) td:eq(1)').html() == 'Epiphany 2.20' &&
+                               $('#example tbody tr:eq(1) td:eq(1)').html() == 'Camino 1.0' &&
+                               $('#example tbody tr:eq(2) td:eq(1)').html() == 'Camino 1.5';
+                       return ret;
+               }
+       );
+       
+       
+       oTest.fnComplete();
+} );
\ No newline at end of file