1 | /*
|
---|
2 | * slider_methods.js
|
---|
3 | */
|
---|
4 | (function($) {
|
---|
5 |
|
---|
6 | module("slider: methods");
|
---|
7 |
|
---|
8 | test("init", function() {
|
---|
9 | expect(6);
|
---|
10 |
|
---|
11 | $("<div></div>").appendTo('body').slider().remove();
|
---|
12 | ok(true, '.slider() called on element');
|
---|
13 |
|
---|
14 | $([]).slider().remove();
|
---|
15 | ok(true, '.slider() called on empty collection');
|
---|
16 |
|
---|
17 | $('<div></div>').slider().remove();
|
---|
18 | ok(true, '.slider() called on disconnected DOMElement');
|
---|
19 |
|
---|
20 | $('<div></div>').slider().slider("foo").remove();
|
---|
21 | ok(true, 'arbitrary method called after init');
|
---|
22 |
|
---|
23 | var el = $('<div></div>').slider();
|
---|
24 | var foo = el.slider("option", "foo");
|
---|
25 | el.remove();
|
---|
26 | ok(true, 'arbitrary option getter after init');
|
---|
27 |
|
---|
28 | $('<div></div>').slider().slider("option", "foo", "bar").remove();
|
---|
29 | ok(true, 'arbitrary option setter after init');
|
---|
30 | });
|
---|
31 |
|
---|
32 | test("destroy", function() {
|
---|
33 | $("<div></div>").appendTo('body').slider().slider("destroy").remove();
|
---|
34 | ok(true, '.slider("destroy") called on element');
|
---|
35 |
|
---|
36 | $([]).slider().slider("destroy").remove();
|
---|
37 | ok(true, '.slider("destroy") called on empty collection');
|
---|
38 |
|
---|
39 | $('<div></div>').appendTo('body').remove().slider().slider("destroy").remove();
|
---|
40 | ok(true, '.slider("destroy") called on disconnected DOMElement');
|
---|
41 |
|
---|
42 | $('<div></div>').slider().slider("destroy").slider("foo").remove();
|
---|
43 | ok(true, 'arbitrary method called after destroy');
|
---|
44 |
|
---|
45 | var expected = $('<div></div>').slider(),
|
---|
46 | actual = expected.slider('destroy');
|
---|
47 | equals(actual, expected, 'destroy is chainable');
|
---|
48 | });
|
---|
49 |
|
---|
50 | test("enable", function() {
|
---|
51 | var expected = $('<div></div>').slider(),
|
---|
52 | actual = expected.slider('enable');
|
---|
53 | equals(actual, expected, 'enable is chainable');
|
---|
54 |
|
---|
55 | var el = $('<div></div>').slider({ disabled: true });
|
---|
56 | ok(el.hasClass('.ui-disabled'), 'slider has ui-disabled class before enable method call');
|
---|
57 | ok(el.hasClass('.ui-slider-disabled'), 'slider has ui-slider-disabled class before enable method call');
|
---|
58 | el.slider('enable');
|
---|
59 | ok(!el.hasClass('.ui-disabled'), 'slider does not have ui-disabled class after enable method call');
|
---|
60 | ok(!el.hasClass('.ui-slider-disabled'), 'slider does not have ui-slider-disabled class after enable method call');
|
---|
61 | });
|
---|
62 |
|
---|
63 | test("disable", function() {
|
---|
64 | var expected = $('<div></div>').slider(),
|
---|
65 | actual = expected.slider('disable');
|
---|
66 | equals(actual, expected, 'disable is chainable');
|
---|
67 |
|
---|
68 | var el = $('<div></div>').slider({ disabled: false });
|
---|
69 | ok(!el.hasClass('.ui-disabled'), 'slider does not have ui-disabled class before disabled method call');
|
---|
70 | ok(!el.hasClass('.ui-slider-disabled'), 'slider does not have ui-slider-disabled class before disable method call');
|
---|
71 | el.slider('disable');
|
---|
72 | ok(el.hasClass('.ui-disabled'), 'slider has ui-disabled class after disable method call');
|
---|
73 | ok(el.hasClass('.ui-slider-disabled'), 'slider has ui-slider-disabled class after disable method call');
|
---|
74 | });
|
---|
75 |
|
---|
76 | test("value", function() {
|
---|
77 | $([false, 'min', 'max']).each(function() {
|
---|
78 | var el = $('<div></div>').slider({
|
---|
79 | range: this,
|
---|
80 | value: 5
|
---|
81 | });
|
---|
82 | equals(el.slider('value'), 5, 'range: ' + this + ' slider method get');
|
---|
83 | el.slider('value', 10);
|
---|
84 | equals(el.slider('value'), 10, 'range: ' + this + ' slider method set');
|
---|
85 | el.remove();
|
---|
86 | });
|
---|
87 | var el = $('<div></div>').slider({
|
---|
88 | min: -1, value: 0, max: 1
|
---|
89 | });
|
---|
90 | // min with value option vs value method
|
---|
91 | el.slider('option', 'value', -2);
|
---|
92 | equals(el.slider('option', 'value'), -2, 'value option does not respect min');
|
---|
93 | equals(el.slider('value'), -1, 'value method get respects min');
|
---|
94 | el.slider('value', -2);
|
---|
95 | equals(el.slider('option', 'value'), -1, 'value method set respects min');
|
---|
96 | // max with value option vs value method
|
---|
97 | el.slider('option', 'value', 2);
|
---|
98 | equals(el.slider('option', 'value'), 2, 'value option does not respect max');
|
---|
99 | equals(el.slider('value'), 1, 'value method get respects max');
|
---|
100 | el.slider('value', 2);
|
---|
101 | equals(el.slider('option', 'value'), 1, 'value method set respects max');
|
---|
102 | });
|
---|
103 |
|
---|
104 | test("values", function() {
|
---|
105 | ok(false, "missing test - untested code is broken code.");
|
---|
106 | });
|
---|
107 |
|
---|
108 | })(jQuery);
|
---|