Skip to content

Commit 3a6b103

Browse files
committed
chore(tests): Add a moveMouseToValue helper to simplofy many tests
1 parent 12f3e01 commit 3a6b103

11 files changed

+175
-235
lines changed

tests/specs/helper.js

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -108,9 +108,12 @@
108108
$timeout.flush();
109109
};
110110

111-
h.mouseMoveToValue = function(value) {
112-
var offset = h.slider.valueToOffset(value) + h.slider.handleHalfDim + h.slider.sliderElem.rzsp;
113-
h.fireMousemove(offset);
111+
h.getMousePosition = function(value) {
112+
return h.slider.valueToOffset(value) + h.slider.handleHalfDim + h.slider.sliderElem.rzsp;
113+
};
114+
115+
h.moveMouseToValue = function(value) {
116+
h.fireMousemove(h.getMousePosition(value));
114117
};
115118

116119
return h;

tests/specs/mouse-controls/draggable-range-slider-horizontal-test.js

Lines changed: 16 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -41,9 +41,8 @@
4141
sinon.spy(helper.slider, 'positionTrackingHandle');
4242
sinon.spy(helper.slider, 'callOnChange');
4343
var event = helper.fireMousedown(helper.slider.minH, 0);
44-
var expectedValue = 50,
45-
offset = helper.slider.valueToOffset(expectedValue) + helper.slider.handleHalfDim + helper.slider.sliderElem.rzsp;
46-
helper.fireMousemove(offset);
44+
var expectedValue = 50;
45+
helper.moveMouseToValue(expectedValue);
4746
expect(helper.scope.slider.min).to.equal(expectedValue);
4847
helper.slider.positionTrackingHandle.called.should.be.true;
4948
helper.slider.callOnChange.called.should.be.true;
@@ -53,29 +52,26 @@
5352
sinon.spy(helper.slider, 'positionTrackingHandle');
5453
sinon.spy(helper.slider, 'callOnChange');
5554
var event = helper.fireMousedown(helper.slider.maxH, 0);
56-
var expectedValue = 50,
57-
offset = helper.slider.valueToOffset(expectedValue) + helper.slider.handleHalfDim + helper.slider.sliderElem.rzsp;
58-
helper.fireMousemove(offset);
55+
var expectedValue = 50;
56+
helper.moveMouseToValue(expectedValue);
5957
expect(helper.scope.slider.max).to.equal(expectedValue);
6058
helper.slider.positionTrackingHandle.called.should.be.true;
6159
helper.slider.callOnChange.called.should.be.true;
6260
});
6361

6462
it('should handle click and drag on minH and switch min/max if needed', function() {
6563
var event = helper.fireMousedown(helper.slider.minH, 0);
66-
var expectedValue = 80,
67-
offset = helper.slider.valueToOffset(expectedValue) + helper.slider.handleHalfDim + helper.slider.sliderElem.rzsp;
68-
helper.fireMousemove(offset);
64+
var expectedValue = 80;
65+
helper.moveMouseToValue(expectedValue);
6966

7067
expect(helper.scope.slider.min).to.equal(60);
7168
expect(helper.scope.slider.max).to.equal(80);
7269
});
7370

7471
it('should handle click and drag on maxH and switch min/max if needed', function() {
7572
var event = helper.fireMousedown(helper.slider.maxH, 0);
76-
var expectedValue = 20,
77-
offset = helper.slider.valueToOffset(expectedValue) + helper.slider.handleHalfDim + helper.slider.sliderElem.rzsp;
78-
helper.fireMousemove(offset);
73+
var expectedValue = 20;
74+
helper.moveMouseToValue(expectedValue);
7975

8076
expect(helper.scope.slider.min).to.equal(20);
8177
expect(helper.scope.slider.max).to.equal(40);
@@ -88,7 +84,7 @@
8884
sinon.spy(helper.slider, 'focusElement');
8985

9086
var expectedValue = 10,
91-
offset = helper.slider.valueToOffset(expectedValue) + helper.slider.handleHalfDim + helper.slider.sliderElem.rzsp;
87+
offset = helper.getMousePosition(expectedValue);
9288

9389
var event = helper.fireMousedown(helper.slider.fullBar, offset);
9490

@@ -107,7 +103,7 @@
107103
sinon.spy(helper.slider, 'focusElement');
108104

109105
var expectedValue = 90,
110-
offset = helper.slider.valueToOffset(expectedValue) + helper.slider.handleHalfDim + helper.slider.sliderElem.rzsp;
106+
offset = helper.getMousePosition(expectedValue);
111107

112108
var event = helper.fireMousedown(helper.slider.fullBar, offset);
113109

@@ -244,7 +240,7 @@
244240
sinon.spy(helper.slider, 'callOnChange');
245241
var event = helper.fireMousedown(helper.slider.minH, 0);
246242
var expectedValue = 50,
247-
offset = helper.slider.valueToOffset(expectedValue) + helper.slider.handleHalfDim + helper.slider.sliderElem.rzsp;
243+
offset = helper.getMousePosition(expectedValue);
248244
helper.fireMousemove(offset);
249245
expect(helper.scope.slider.min).to.equal(expectedValue);
250246
helper.slider.positionTrackingHandle.called.should.be.true;
@@ -256,7 +252,7 @@
256252
sinon.spy(helper.slider, 'callOnChange');
257253
var event = helper.fireMousedown(helper.slider.maxH, 0);
258254
var expectedValue = 50,
259-
offset = helper.slider.valueToOffset(expectedValue) + helper.slider.handleHalfDim + helper.slider.sliderElem.rzsp;
255+
offset = helper.getMousePosition(expectedValue);
260256
helper.fireMousemove(offset);
261257
expect(helper.scope.slider.max).to.equal(expectedValue);
262258
helper.slider.positionTrackingHandle.called.should.be.true;
@@ -266,7 +262,7 @@
266262
it('should handle click and drag on minH and switch min/max if needed', function() {
267263
var event = helper.fireMousedown(helper.slider.minH, 0);
268264
var expectedValue = 80,
269-
offset = helper.slider.valueToOffset(expectedValue) + helper.slider.handleHalfDim + helper.slider.sliderElem.rzsp;
265+
offset = helper.getMousePosition(expectedValue);
270266
helper.fireMousemove(offset);
271267

272268
expect(helper.scope.slider.min).to.equal(60);
@@ -276,7 +272,7 @@
276272
it('should handle click and drag on maxH and switch min/max if needed', function() {
277273
var event = helper.fireMousedown(helper.slider.maxH, 0);
278274
var expectedValue = 20,
279-
offset = helper.slider.valueToOffset(expectedValue) + helper.slider.handleHalfDim + helper.slider.sliderElem.rzsp;
275+
offset = helper.getMousePosition(expectedValue);
280276
helper.fireMousemove(offset);
281277

282278
expect(helper.scope.slider.min).to.equal(20);
@@ -290,7 +286,7 @@
290286
sinon.spy(helper.slider, 'focusElement');
291287

292288
var expectedValue = 10,
293-
offset = helper.slider.valueToOffset(expectedValue) + helper.slider.handleHalfDim + helper.slider.sliderElem.rzsp;
289+
offset = helper.getMousePosition(expectedValue);
294290

295291
var event = helper.fireMousedown(helper.slider.fullBar, offset);
296292

@@ -309,7 +305,7 @@
309305
sinon.spy(helper.slider, 'focusElement');
310306

311307
var expectedValue = 90,
312-
offset = helper.slider.valueToOffset(expectedValue) + helper.slider.handleHalfDim + helper.slider.sliderElem.rzsp;
308+
offset = helper.getMousePosition(expectedValue);
313309

314310
var event = helper.fireMousedown(helper.slider.fullBar, offset);
315311

tests/specs/mouse-controls/minMaxLimit-range-slider-horizontal-test.js

Lines changed: 16 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -40,33 +40,29 @@
4040

4141
it('should be able to modify minH above minLimit', function() {
4242
helper.fireMousedown(helper.slider.minH, 0);
43-
var expectedValue = 42,
44-
offset = helper.slider.valueToOffset(expectedValue) + helper.slider.handleHalfDim + helper.slider.sliderElem.rzsp;
45-
helper.fireMousemove(offset);
43+
var expectedValue = 42;
44+
helper.moveMouseToValue(expectedValue);
4645
expect(helper.scope.slider.min).to.equal(42);
4746
});
4847

4948
it('should not be able to modify minH below minLimit', function() {
5049
helper.fireMousedown(helper.slider.minH, 0);
51-
var expectedValue = 30,
52-
offset = helper.slider.valueToOffset(expectedValue) + helper.slider.handleHalfDim + helper.slider.sliderElem.rzsp;
53-
helper.fireMousemove(offset);
50+
var expectedValue = 30;
51+
helper.moveMouseToValue(expectedValue);
5452
expect(helper.scope.slider.min).to.equal(40);
5553
});
5654

5755
it('should be able to modify maxH below maxLimit', function() {
5856
helper.fireMousedown(helper.slider.maxH, 0);
59-
var expectedValue = 58,
60-
offset = helper.slider.valueToOffset(expectedValue) + helper.slider.handleHalfDim + helper.slider.sliderElem.rzsp;
61-
helper.fireMousemove(offset);
57+
var expectedValue = 58;
58+
helper.moveMouseToValue(expectedValue);
6259
expect(helper.scope.slider.max).to.equal(58);
6360
});
6461

6562
it('should not be able to modify maxH above maxLimit', function() {
6663
helper.fireMousedown(helper.slider.maxH, 0);
67-
var expectedValue = 70,
68-
offset = helper.slider.valueToOffset(expectedValue) + helper.slider.handleHalfDim + helper.slider.sliderElem.rzsp;
69-
helper.fireMousemove(offset);
64+
var expectedValue = 70;
65+
helper.moveMouseToValue(expectedValue);
7066
expect(helper.scope.slider.max).to.equal(60);
7167
});
7268
});
@@ -111,33 +107,29 @@
111107

112108
it('should be able to modify minH above minLimit', function() {
113109
helper.fireMousedown(helper.slider.minH, 0);
114-
var expectedValue = 42,
115-
offset = helper.slider.valueToOffset(expectedValue) + helper.slider.handleHalfDim + helper.slider.sliderElem.rzsp;
116-
helper.fireMousemove(offset);
110+
var expectedValue = 42;
111+
helper.moveMouseToValue(expectedValue);
117112
expect(helper.scope.slider.min).to.equal(42);
118113
});
119114

120115
it('should not be able to modify minH below minLimit', function() {
121116
helper.fireMousedown(helper.slider.minH, 0);
122-
var expectedValue = 30,
123-
offset = helper.slider.valueToOffset(expectedValue) + helper.slider.handleHalfDim + helper.slider.sliderElem.rzsp;
124-
helper.fireMousemove(offset);
117+
var expectedValue = 30;
118+
helper.moveMouseToValue(expectedValue);
125119
expect(helper.scope.slider.min).to.equal(40);
126120
});
127121

128122
it('should be able to modify maxH below maxLimit', function() {
129123
helper.fireMousedown(helper.slider.maxH, 0);
130-
var expectedValue = 58,
131-
offset = helper.slider.valueToOffset(expectedValue) + helper.slider.handleHalfDim + helper.slider.sliderElem.rzsp;
132-
helper.fireMousemove(offset);
124+
var expectedValue = 58;
125+
helper.moveMouseToValue(expectedValue);
133126
expect(helper.scope.slider.max).to.equal(58);
134127
});
135128

136129
it('should not be able to modify maxH above maxLimit', function() {
137130
helper.fireMousedown(helper.slider.maxH, 0);
138-
var expectedValue = 70,
139-
offset = helper.slider.valueToOffset(expectedValue) + helper.slider.handleHalfDim + helper.slider.sliderElem.rzsp;
140-
helper.fireMousemove(offset);
131+
var expectedValue = 70;
132+
helper.moveMouseToValue(expectedValue);
141133
expect(helper.scope.slider.max).to.equal(60);
142134
});
143135
});

tests/specs/mouse-controls/minMaxLimit-single-slider-horizontal-test.js

Lines changed: 16 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -39,33 +39,29 @@
3939

4040
it('should be able to modify minH above minLimit', function() {
4141
helper.fireMousedown(helper.slider.minH, 0);
42-
var expectedValue = 42,
43-
offset = helper.slider.valueToOffset(expectedValue) + helper.slider.handleHalfDim + helper.slider.sliderElem.rzsp;
44-
helper.fireMousemove(offset);
42+
var expectedValue = 42;
43+
helper.moveMouseToValue(expectedValue);
4544
expect(helper.scope.slider.value).to.equal(42);
4645
});
4746

4847
it('should not be able to modify minH below minLimit', function() {
4948
helper.fireMousedown(helper.slider.minH, 0);
50-
var expectedValue = 30,
51-
offset = helper.slider.valueToOffset(expectedValue) + helper.slider.handleHalfDim + helper.slider.sliderElem.rzsp;
52-
helper.fireMousemove(offset);
49+
var expectedValue = 30;
50+
helper.moveMouseToValue(expectedValue);
5351
expect(helper.scope.slider.value).to.equal(40);
5452
});
5553

5654
it('should be able to modify minH below maxLimit', function() {
5755
helper.fireMousedown(helper.slider.minH, 0);
58-
var expectedValue = 58,
59-
offset = helper.slider.valueToOffset(expectedValue) + helper.slider.handleHalfDim + helper.slider.sliderElem.rzsp;
60-
helper.fireMousemove(offset);
56+
var expectedValue = 58;
57+
helper.moveMouseToValue(expectedValue);
6158
expect(helper.scope.slider.value).to.equal(58);
6259
});
6360

6461
it('should not be able to modify minH above maxLimit', function() {
6562
helper.fireMousedown(helper.slider.minH, 0);
66-
var expectedValue = 70,
67-
offset = helper.slider.valueToOffset(expectedValue) + helper.slider.handleHalfDim + helper.slider.sliderElem.rzsp;
68-
helper.fireMousemove(offset);
63+
var expectedValue = 70;
64+
helper.moveMouseToValue(expectedValue);
6965
expect(helper.scope.slider.value).to.equal(60);
7066
});
7167
});
@@ -109,33 +105,29 @@
109105

110106
it('should be able to modify minH above minLimit', function() {
111107
helper.fireMousedown(helper.slider.minH, 0);
112-
var expectedValue = 42,
113-
offset = helper.slider.valueToOffset(expectedValue) + helper.slider.handleHalfDim + helper.slider.sliderElem.rzsp;
114-
helper.fireMousemove(offset);
108+
var expectedValue = 42;
109+
helper.moveMouseToValue(expectedValue);
115110
expect(helper.scope.slider.value).to.equal(42);
116111
});
117112

118113
it('should not be able to modify minH below minLimit', function() {
119114
helper.fireMousedown(helper.slider.minH, 0);
120-
var expectedValue = 30,
121-
offset = helper.slider.valueToOffset(expectedValue) + helper.slider.handleHalfDim + helper.slider.sliderElem.rzsp;
122-
helper.fireMousemove(offset);
115+
var expectedValue = 30;
116+
helper.moveMouseToValue(expectedValue);
123117
expect(helper.scope.slider.value).to.equal(40);
124118
});
125119

126120
it('should be able to modify minH below maxLimit', function() {
127121
helper.fireMousedown(helper.slider.minH, 0);
128-
var expectedValue = 58,
129-
offset = helper.slider.valueToOffset(expectedValue) + helper.slider.handleHalfDim + helper.slider.sliderElem.rzsp;
130-
helper.fireMousemove(offset);
122+
var expectedValue = 58;
123+
helper.moveMouseToValue(expectedValue);
131124
expect(helper.scope.slider.value).to.equal(58);
132125
});
133126

134127
it('should not be able to modify minH above maxLimit', function() {
135128
helper.fireMousedown(helper.slider.minH, 0);
136-
var expectedValue = 70,
137-
offset = helper.slider.valueToOffset(expectedValue) + helper.slider.handleHalfDim + helper.slider.sliderElem.rzsp;
138-
helper.fireMousemove(offset);
129+
var expectedValue = 70;
130+
helper.moveMouseToValue(expectedValue);
139131
expect(helper.scope.slider.value).to.equal(60);
140132
});
141133
});

0 commit comments

Comments
 (0)