2727import org .openqa .selenium .WebElement ;
2828import org .openqa .selenium .testing .JUnit4TestBase ;
2929
30- import java .time .Duration ;
31-
3230/**
3331 * Tests operations that involve scroll wheel.
3432 */
@@ -45,12 +43,8 @@ public void shouldScrollToElement() {
4543
4644 assertFalse (inViewport (iframe ));
4745
48- getBuilder (driver ).scroll (
49- 0 ,
50- 0 ,
51- 0 ,
52- 0 ,
53- WheelInput .Origin .fromElement (iframe )).perform ();
46+ WheelInput .ScrollOrigin scrollOrigin = WheelInput .ScrollOrigin .fromElement (iframe );
47+ getBuilder (driver ).scroll (0 , 0 , 0 , 0 , scrollOrigin ).perform ();
5448
5549 assertTrue (inViewport (iframe ));
5650 }
@@ -59,16 +53,11 @@ public void shouldScrollToElement() {
5953 public void shouldScrollFromElementByGivenAmount () {
6054 driver .get (appServer .whereIs ("scrolling_tests/frame_with_nested_scrolling_frame_out_of_view.html" ));
6155 WebElement iframe = driver .findElement (By .tagName ("iframe" ));
56+ WheelInput .ScrollOrigin scrollOrigin = WheelInput .ScrollOrigin .fromElement (iframe );
6257
63- getBuilder (driver ).scroll (
64- 0 ,
65- 0 ,
66- 0 ,
67- 200 ,
68- WheelInput .Origin .fromElement (iframe )).perform ();
58+ getBuilder (driver ).scroll (0 , 0 , 0 , 200 , scrollOrigin ).perform ();
6959
7060 driver .switchTo ().frame (iframe );
71-
7261 WebElement checkbox = driver .findElement (By .name ("scroll_checkbox" ));
7362 assertTrue (inViewport (checkbox ));
7463 }
@@ -77,16 +66,12 @@ public void shouldScrollFromElementByGivenAmount() {
7766 public void shouldScrollFromElementByGivenAmountWithOffset () {
7867 driver .get (appServer .whereIs ("scrolling_tests/frame_with_nested_scrolling_frame_out_of_view.html" ));
7968 WebElement footer = driver .findElement (By .tagName ("footer" ));
69+ WheelInput .ScrollOrigin scrollOrigin = WheelInput .ScrollOrigin .fromElement (footer );
8070
81- getBuilder (driver ).scroll (
82- 0 ,
83- -50 ,
84- 0 ,
85- 200 ,
86- WheelInput .Origin .fromElement (footer )).perform ();
87-
88- driver .switchTo ().frame (driver .findElement (By .tagName ("iframe" )));
71+ getBuilder (driver ).scroll (0 , -50 , 0 , 200 , scrollOrigin ).perform ();
8972
73+ WebElement iframe = driver .findElement (By .tagName ("iframe" ));
74+ driver .switchTo ().frame (iframe );
9075 WebElement checkbox = driver .findElement (By .name ("scroll_checkbox" ));
9176 assertTrue (inViewport (checkbox ));
9277 }
@@ -95,61 +80,42 @@ public void shouldScrollFromElementByGivenAmountWithOffset() {
9580 public void throwErrorWhenElementOriginIsOutOfViewport () {
9681 driver .get (appServer .whereIs ("scrolling_tests/frame_with_nested_scrolling_frame_out_of_view.html" ));
9782 WebElement footer = driver .findElement (By .tagName ("footer" ));
83+ WheelInput .ScrollOrigin scrollOrigin = WheelInput .ScrollOrigin .fromElement (footer );
9884
99- getBuilder (driver ).scroll (
100- 0 ,
101- 50 ,
102- 0 ,
103- 200 ,
104- WheelInput .Origin .fromElement (footer )).perform ();
85+ getBuilder (driver ).scroll (0 , 50 , 0 , 200 , scrollOrigin ).perform ();
10586 }
10687
10788 @ Test
10889 public void shouldScrollFromViewportByGivenAmount () {
10990 driver .get (appServer .whereIs ("scrolling_tests/frame_with_nested_scrolling_frame_out_of_view.html" ));
11091 WebElement footer = driver .findElement (By .tagName ("footer" ));
92+ int deltaY = footer .getRect ().y ;
93+ WheelInput .ScrollOrigin scrollOrigin = WheelInput .ScrollOrigin .fromViewport ();
11194
112- int y = footer .getRect ().y ;
113-
114- getBuilder (driver ).scroll (
115- 0 ,
116- 0 ,
117- 0 ,
118- y ,
119- WheelInput .Origin .viewport ()).perform ();
95+ getBuilder (driver ).scroll (0 , 0 , 0 , deltaY , scrollOrigin ).perform ();
12096
12197 assertTrue (inViewport (footer ));
12298 }
12399
124100 @ Test
125101 public void shouldScrollFromViewportByGivenAmountFromOrigin () {
126102 driver .get (appServer .whereIs ("scrolling_tests/frame_with_nested_scrolling_frame.html" ));
103+ WheelInput .ScrollOrigin scrollOrigin = WheelInput .ScrollOrigin .fromViewport ();
127104
128- WebElement iframe = driver .findElement (By .tagName ("iframe" ));
129-
130- getBuilder (driver ).scroll (
131- 10 ,
132- 10 ,
133- 0 ,
134- 200 ,
135- WheelInput .Origin .viewport ()).perform ();
105+ getBuilder (driver ).scroll (10 , 10 , 0 , 200 , scrollOrigin ).perform ();
136106
107+ WebElement iframe = driver .findElement (By .tagName ("iframe" ));
137108 driver .switchTo ().frame (iframe );
138-
139109 WebElement checkbox = driver .findElement (By .name ("scroll_checkbox" ));
140110 assertTrue (inViewport (checkbox ));
141111 }
142112
143113 @ Test (expected = MoveTargetOutOfBoundsException .class )
144114 public void throwErrorWhenOriginOffsetIsOutOfViewport () {
145115 driver .get (appServer .whereIs ("scrolling_tests/frame_with_nested_scrolling_frame.html" ));
116+ WheelInput .ScrollOrigin scrollOrigin = WheelInput .ScrollOrigin .fromViewport ();
146117
147- getBuilder (driver ).scroll (
148- -10 ,
149- -10 ,
150- 0 ,
151- 200 ,
152- WheelInput .Origin .viewport ()).perform ();
118+ getBuilder (driver ).scroll (-10 , -10 , 0 , 200 , scrollOrigin ).perform ();
153119 }
154120
155121 private boolean inViewport (WebElement element ) {
0 commit comments