13
$.each(keyCodes, function(key, val) {
14
$.fn[key] = function() {
15
return this.simulate("keydown", { keyCode: val });
19
function assertChange(stepping, start, result, action) {
22
var slider = $("#slider3").slider({
27
change: function(e, ui) {
28
equals(ui.value, result, "changed to " + ui.value);
35
module("slider: single handle")
37
test("change one step via keydown", assertChange(1, undefined, 1, function() {
38
this.find("a").rightArrow();
40
test("change - 10 steps via keydown", assertChange(10, 20, 10, function() {
41
this.find("a").leftArrow();
43
test("change +10 steps via keydown", assertChange(10, 20, 30, function() {
44
this.find("a").rightArrow();
47
test("moveTo, absolute value", assertChange(1, 1, 10, function() {
48
this.slider("moveTo", 10);
51
test("moveTo, absolute value as string", assertChange(1, 1, 10, function() {
52
this.slider("moveTo", "10");
55
test("moveTo, absolute value, below min", assertChange(1, 1, 0, function() {
56
this.slider("moveTo", -10);
59
test("moveTo, relative positive value", assertChange(1, 1, 11, function() {
60
this.slider("moveTo", "+=10");
63
test("moveTo, relative positive value, above max", assertChange(1, 10, 1000, function() {
64
this.slider("moveTo", "+=2000");
67
test("moveTo, relative negative value", assertChange(1, 20, 10, function() {
68
this.slider("moveTo", "-=10");
71
test("options update min/max", function() {
73
var slider = $("#slider3").slider({
77
slider.slider("moveTo", "-=10");
78
equals(slider.slider("value"), 0);
79
slider.data("min.slider", -10);
80
slider.slider("moveTo", "-=20");
81
equals(slider.slider("value"), -10);
84
module("slider: setup and teardown");
86
test("destroy and recreate", function() {
88
var slider = $("#slider3").slider();
89
slider.slider("moveTo", "+=20");
90
equals(slider.slider("value"), 20);
91
slider.slider("destroy");
93
slider.slider("moveTo", "+=30");
94
ok(true, "nothing happens after slider is destroyed");
96
slider.slider().slider("moveTo", "30");
98
equals(Math.round(slider.slider("value")), 30);
101
test("handle creation", function() {
102
var slider = $("#slider1");
103
equals(slider.children().size(), 0);
110
equals(slider.children().size(), 2);
111
var instance = $.data(slider[0], "slider")
112
equals(instance.handle.length, 2);
113
ok(instance.handle.jquery, "handle must be a jquery object")