| OLD | NEW |
| 1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 /** @fileoverview Suite of tests for cr-slider. */ | 5 /** @fileoverview Suite of tests for cr-slider. */ |
| 6 cr.define('cr_slider', function() { | 6 cr.define('cr_slider', function() { |
| 7 function registerTests() { | 7 function registerTests() { |
| 8 suite('cr-slider', function() { | 8 suite('cr-slider', function() { |
| 9 /** @type {!CrSliderElement} */ | 9 /** @type {!CrSliderElement} */ |
| 10 var slider; | 10 var slider; |
| 11 | 11 |
| 12 /** | 12 /** |
| 13 * paper-slider instance wrapped by cr-slider. | 13 * paper-slider instance wrapped by cr-slider. |
| 14 * @type {!PaperSliderElement} | 14 * @type {!PaperSliderElement} |
| 15 */ | 15 */ |
| 16 var paperSlider; | 16 var paperSlider; |
| 17 | 17 |
| 18 var tickValues = [2, 4, 8, 16, 32, 64, 128]; | 18 var tickValues = [2, 4, 8, 16, 32, 64, 128]; |
| 19 | 19 |
| 20 setup(function() { | 20 setup(function() { |
| 21 PolymerTest.clearBody(); | 21 PolymerTest.clearBody(); |
| 22 slider = document.createElement('cr-slider'); | 22 slider = document.createElement('cr-slider'); |
| 23 document.body.appendChild(slider); | 23 document.body.appendChild(slider); |
| 24 paperSlider = slider.$$('paper-slider'); | 24 paperSlider = slider.$$('paper-slider'); |
| 25 }); | 25 }); |
| 26 | 26 |
| 27 test('basic properties', function() { | |
| 28 // Default properties. | |
| 29 expectEquals(1, paperSlider.step); | |
| 30 expectEquals(0, paperSlider.min); | |
| 31 | |
| 32 // Configurable properties. | |
| 33 expectFalse(paperSlider.snaps); | |
| 34 slider.setAttribute('snaps', ''); | |
| 35 expectTrue(paperSlider.snaps); | |
| 36 | |
| 37 slider.setAttribute('max-markers', 7); | |
| 38 expectEquals(7, paperSlider.maxMarkers); | |
| 39 }); | |
| 40 | |
| 41 test('set value', function() { | 27 test('set value', function() { |
| 42 slider.tickValues = tickValues; | 28 slider.tickValues = tickValues; |
| 43 slider.value = 16; | 29 slider.value = 16; |
| 44 expectEquals(6, paperSlider.max); | 30 expectEquals(6, paperSlider.max); |
| 45 expectEquals(3, paperSlider.value); | 31 expectEquals(3, paperSlider.value); |
| 46 expectEquals(3, paperSlider.immediateValue); | 32 expectEquals(3, paperSlider.immediateValue); |
| 47 | 33 |
| 48 // Setting to an in-between value should choose an index but not change | 34 // cr-slider only supports snapping to a range of tick values. Setting |
| 49 // the value. | 35 // to an in-between value should snap to an indexed value. |
| 50 slider.value = 70; | 36 slider.value = 70; |
| 51 expectEquals(5, paperSlider.value); | 37 expectEquals(5, paperSlider.value); |
| 52 expectEquals(5, paperSlider.immediateValue); | 38 expectEquals(5, paperSlider.immediateValue); |
| 53 expectEquals(70, slider.value); | 39 expectEquals(64, slider.value); |
| 54 | 40 |
| 55 // Setting the value out-of-range should clamp the slider. | 41 // Setting the value out-of-range should clamp the slider. |
| 56 slider.value = -100; | 42 slider.value = -100; |
| 57 expectEquals(0, paperSlider.value); | 43 expectEquals(0, paperSlider.value); |
| 58 expectEquals(0, paperSlider.immediateValue); | 44 expectEquals(0, paperSlider.immediateValue); |
| 59 expectEquals(-100, slider.value); | 45 expectEquals(2, slider.value); |
| 60 }); | 46 }); |
| 61 | 47 |
| 62 test('move slider', function() { | 48 test('move slider', function() { |
| 63 slider.tickValues = tickValues; | 49 slider.tickValues = tickValues; |
| 64 slider.value = 30; | 50 slider.value = 30; |
| 65 expectEquals(4, paperSlider.value); | 51 expectEquals(4, paperSlider.value); |
| 66 | 52 |
| 67 MockInteractions.pressAndReleaseKeyOn( | 53 MockInteractions.pressAndReleaseKeyOn( |
| 68 paperSlider, 39 /* right */); | 54 paperSlider, 39 /* right */); |
| 69 expectEquals(5, paperSlider.value); | 55 expectEquals(5, paperSlider.value); |
| (...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 111 testFindNearestIndex(5, 100); | 97 testFindNearestIndex(5, 100); |
| 112 testFindNearestIndex(5, 91); | 98 testFindNearestIndex(5, 91); |
| 113 }); | 99 }); |
| 114 }); | 100 }); |
| 115 } | 101 } |
| 116 | 102 |
| 117 return { | 103 return { |
| 118 registerTests: registerTests, | 104 registerTests: registerTests, |
| 119 }; | 105 }; |
| 120 }); | 106 }); |
| OLD | NEW |