File: orderClasses.js

package info (click to toggle)
datatables.js 1.10.13%2Bdfsg-2
  • links: PTS, VCS
  • area: main
  • in suites: stretch
  • size: 6,232 kB
  • ctags: 1,329
  • sloc: xml: 10,249; php: 4,387; sh: 492; makefile: 21
file content (67 lines) | stat: -rw-r--r-- 2,658 bytes parent folder | download | duplicates (2)
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
describe( "orderClasses option", function() {
	dt.libs( {
		js:  [ 'jquery', 'datatables' ],
		css: [ 'datatables' ]
	} );

	describe("Check the defaults", function () {
		dt.html( 'basic' );
		it("Enabled by default", function () {
			$('#example').dataTable();
			expect( $('#example tbody tr:eq(0) td:eq(0)').hasClass('sorting_1'));
		});

		it("Applied to multiple columns", function () {
			$('#example').dataTable( {
				"order": [[ 0, 'desc' ], [ 1, 'desc' ]],
				"destroy": "true"
			});
			expect( $('#example tbody tr:eq(0) td:eq(0)').hasClass('sorting_1')).toBe(true);
			expect( $('#example tbody tr:eq(0) td:eq(1)').hasClass('sorting_2')).toBe(true);
		});
		it("Applied to a third column", function () {
			$('#example').dataTable( {
				"order": [[ 0, 'desc' ], [ 1, 'desc' ],[ 2, 'asc']],
				"destroy": "true"
			});
			expect( $('#example tbody tr:eq(0) td:eq(0)').hasClass('sorting_1')).toBe(true);
			expect( $('#example tbody tr:eq(0) td:eq(1)').hasClass('sorting_2')).toBe(true);
			expect( $('#example tbody tr:eq(0) td:eq(2)').hasClass('sorting_3')).toBe(true);
		});
		it("Applied to a 4th column", function () {
			$('#example').dataTable( {
				"order": [[ 0, 'desc' ], [ 1, 'desc' ],[ 2, 'asc'],[ 3, 'desc']],
				"destroy": "true"
			});
			expect( $('#example tbody tr:eq(0) td:eq(0)').hasClass('sorting_1')).toBe(true);
			expect( $('#example tbody tr:eq(0) td:eq(1)').hasClass('sorting_2')).toBe(true);
			expect( $('#example tbody tr:eq(0) td:eq(2)').hasClass('sorting_3')).toBe(true);
			expect( $('#example tbody tr:eq(0) td:eq(3)').hasClass('sorting_3')).toBe(true);
		});
	});
	describe("Can be disabled", function () {
		it("Can be turned off", function () {
			$('#example').dataTable( {
				"orderClasses": false,
				"destroy": "true"
			});
			expect( $('#example tbody tr:eq(0) td:eq(0)').hasClass('sorting_1')).toBe(false);
		});
		it("Add column 2- no effect", function () {
			var clickEvent = $.Event('click');
			clickEvent.shiftKey = true;
			$('#example thead th:eq(1)').trigger(clickEvent);
			expect( $('#example tbody tr:eq(0) td:eq(0)').hasClass('sorting_1')).toBe(false);
			expect( $('#example tbody tr:eq(0) td:eq(1)').hasClass('sorting_1')).toBe(false);
		});
		it("Add column 3- no effect", function () {
			var clickEvent = $.Event('click');
			clickEvent.shiftKey = true;
			$('#example thead th:eq(2)').trigger(clickEvent);
			expect( $('#example tbody tr:eq(0) td:eq(0)').hasClass('sorting_1')).toBe(false);
			expect( $('#example tbody tr:eq(0) td:eq(1)').hasClass('sorting_1')).toBe(false);
			expect( $('#example tbody tr:eq(0) td:eq(2)').hasClass('sorting_1')).toBe(false);

		});
	});
});