From 5ffd3ab36a6c7d6c0aaad7d84c20b8d78c149a1f Mon Sep 17 00:00:00 2001 From: "Richard D. Worth" Date: Thu, 1 Apr 2010 15:00:45 -0400 Subject: Align slider value to step. Fixes #5471 - value not aligned to step when set programatically --- tests/unit/slider/slider_options.js | 41 +++++++++++++++++++++++++++++++++---- 1 file changed, 37 insertions(+), 4 deletions(-) (limited to 'tests/unit') diff --git a/tests/unit/slider/slider_options.js b/tests/unit/slider/slider_options.js index cc36923b3..b9a766539 100644 --- a/tests/unit/slider/slider_options.js +++ b/tests/unit/slider/slider_options.js @@ -88,17 +88,50 @@ test("range", function() { ok(false, "missing test - untested code is broken code."); }); +//spec: http://wiki.jqueryui.com/Slider#specs +// value option/method: the value option is not restricted by min/max/step. +// What is returned by the value method is restricted by min (>=), max (<=), and step (even multiple) test("step", function() { var el = $('
').slider({ - step: 10 + min: 0, + value: 0, + step: 10, + max: 100, }); - equals( el.slider("value"), 0 ) + equals( el.slider("value"), 0 ); + el.slider("value", 1); + equals( el.slider("value"), 0 ); + + el.slider("value", 9); equals( el.slider("value"), 10 ); - el.slider("value", 10); - equals( el.slider("value"), 10 ); + el.slider("value", 11); + equals( el.slider("value"), 10 ); + + el.slider("value", 19); equals( el.slider("value"), 20 ); + +el = $('
').slider({ + min: 0, + value: 0, + step: 20, + max: 100, + }); + el.slider("value", 0); + + el.slider("option", "value", 1); + equals( el.slider("value"), 0 ); + + el.slider("option", "value", 9); + equals( el.slider("value"), 0 ); + + el.slider("option", "value", 11); + equals( el.slider("value"), 20 ); + + el.slider("option", "value", 19); + equals( el.slider("value"), 20 ); + el.slider('destroy'); }); -- cgit v1.2.3