remove datatable unit tests
[contractdashboard.git] / media / sPaginationType.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
// DATA_TEMPLATE: empty_table
oTest.fnStart( "sPaginationType" );
 
$(document).ready( function () {
        /* Check the default */
        var oTable = $('#example').dataTable( {
                "sAjaxSource": "../../../examples/examples_support/json_source.txt"
        } );
        var oSettings = oTable.fnSettings();
        
        oTest.fnWaitTest( 
                "Check two button paging is the default",
                null,
                function () { return oSettings.sPaginationType == "two_button"; }
        );
        
        oTest.fnWaitTest( 
                "Check class is applied",
                null,
                function () { return $('#example_paginate').hasClass('paging_two_button'); }
        );
        
        oTest.fnWaitTest( 
                "Two div elements are in the wrapper",
                null,
                function () { return $('#example_paginate div').length == 2; }
        );
        
        oTest.fnWaitTest( 
                "We have the previous button",
                null,
                function () { return document.getElementById('example_previous'); }
        );
        
        oTest.fnWaitTest( 
                "We have the next button",
                null,
                function () { return document.getElementById('example_next'); }
        );
        
        oTest.fnWaitTest( 
                "Previous button is disabled",
                null,
                function () { return $('#example_previous').hasClass('paginate_disabled_previous'); }
        );
        
        oTest.fnWaitTest( 
                "Next button is enabled",
                null,
                function () { return $('#example_next').hasClass('paginate_enabled_next'); }
        );
        
        /* Don't test paging - that's done by the zero config test script. */
        
        
        /* Two buttons paging */
        var bComplete = false;
        oTest.fnWaitTest( 
                "Can enabled full numbers paging",
                function () {
                        oSession.fnRestore();
                        oTable = $('#example').dataTable( {
                                "sAjaxSource": "../../../examples/examples_support/json_source.txt",
                                "sPaginationType": "full_numbers",
                                "fnInitComplete": function () {
                                        bComplete = true;
                                }
                        } );
                        oSettings = oTable.fnSettings();
                },
                function () {
                        if ( bComplete )
                                return oSettings.sPaginationType == "full_numbers";
                        else
                                return false;
                }
        );
        
        oTest.fnWaitTest( 
                "Check full numbers class is applied",
                null,
                function () { return $('#example_paginate').hasClass('paging_full_numbers'); }
        );
        
        
        var nFirst, nPrevious, nNext, nLast;
        oTest.fnWaitTest( 
                "Jump to last page",
                function () {
                        nFirst = $('div.dataTables_paginate span.first');
                        nPrevious = $('div.dataTables_paginate span.previous');
                        nNext = $('div.dataTables_paginate span.next');
                        nLast = $('div.dataTables_paginate span.last');
                        nLast.click();
                },
                function () {
                        return document.getElementById('example_info').innerHTML == "Showing 51 to 57 of 57 entries";
                }
        );
        
        oTest.fnWaitTest( 
                "Go to two pages previous",
                function () {
                        nPrevious.click();
                        nPrevious.click();
                },
                function () {
                        return document.getElementById('example_info').innerHTML == "Showing 31 to 40 of 57 entries";
                }
        );
        
        oTest.fnWaitTest( 
                "Next (second last) page",
                function () {
                        nNext.click();
                },
                function () {
                        return document.getElementById('example_info').innerHTML == "Showing 41 to 50 of 57 entries";
                }
        );
        
        oTest.fnWaitTest( 
                "Jump to first page",
                function () {
                        nFirst.click();
                },
                function () {
                        return document.getElementById('example_info').innerHTML == "Showing 1 to 10 of 57 entries";
                }
        );
        
        
        oTest.fnComplete();
} );