OLD | NEW |
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 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 #include <stddef.h> | 5 #include <stddef.h> |
6 #include <utility> | 6 #include <utility> |
7 | 7 |
8 #include "base/base64.h" | 8 #include "base/base64.h" |
9 #include "base/command_line.h" | 9 #include "base/command_line.h" |
10 #include "base/json/json_reader.h" | 10 #include "base/json/json_reader.h" |
(...skipping 249 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
260 | 260 |
261 int old_height; | 261 int old_height; |
262 ASSERT_TRUE(content::ExecuteScriptAndExtractInt( | 262 ASSERT_TRUE(content::ExecuteScriptAndExtractInt( |
263 shell()->web_contents(), | 263 shell()->web_contents(), |
264 "domAutomationController.send(window.innerHeight)", &old_height)); | 264 "domAutomationController.send(window.innerHeight)", &old_height)); |
265 | 265 |
266 scoped_ptr<base::DictionaryValue> params(new base::DictionaryValue()); | 266 scoped_ptr<base::DictionaryValue> params(new base::DictionaryValue()); |
267 params->SetInteger("x", old_width / 2); | 267 params->SetInteger("x", old_width / 2); |
268 params->SetInteger("y", old_height / 2); | 268 params->SetInteger("y", old_height / 2); |
269 params->SetDouble("scaleFactor", 2.0); | 269 params->SetDouble("scaleFactor", 2.0); |
270 SendCommand("Input.synthesizePinchGesture", params.Pass()); | 270 SendCommand("Input.synthesizePinchGesture", std::move(params)); |
271 | 271 |
272 int new_width; | 272 int new_width; |
273 ASSERT_TRUE(content::ExecuteScriptAndExtractInt( | 273 ASSERT_TRUE(content::ExecuteScriptAndExtractInt( |
274 shell()->web_contents(), | 274 shell()->web_contents(), |
275 "domAutomationController.send(window.innerWidth)", &new_width)); | 275 "domAutomationController.send(window.innerWidth)", &new_width)); |
276 ASSERT_DOUBLE_EQ(2.0, static_cast<double>(old_width) / new_width); | 276 ASSERT_DOUBLE_EQ(2.0, static_cast<double>(old_width) / new_width); |
277 | 277 |
278 int new_height; | 278 int new_height; |
279 ASSERT_TRUE(content::ExecuteScriptAndExtractInt( | 279 ASSERT_TRUE(content::ExecuteScriptAndExtractInt( |
280 shell()->web_contents(), | 280 shell()->web_contents(), |
(...skipping 10 matching lines...) Expand all Loading... |
291 ASSERT_TRUE(content::ExecuteScriptAndExtractInt( | 291 ASSERT_TRUE(content::ExecuteScriptAndExtractInt( |
292 shell()->web_contents(), | 292 shell()->web_contents(), |
293 "domAutomationController.send(document.body.scrollTop)", &scroll_top)); | 293 "domAutomationController.send(document.body.scrollTop)", &scroll_top)); |
294 ASSERT_EQ(0, scroll_top); | 294 ASSERT_EQ(0, scroll_top); |
295 | 295 |
296 scoped_ptr<base::DictionaryValue> params(new base::DictionaryValue()); | 296 scoped_ptr<base::DictionaryValue> params(new base::DictionaryValue()); |
297 params->SetInteger("x", 0); | 297 params->SetInteger("x", 0); |
298 params->SetInteger("y", 0); | 298 params->SetInteger("y", 0); |
299 params->SetInteger("xDistance", 0); | 299 params->SetInteger("xDistance", 0); |
300 params->SetInteger("yDistance", -100); | 300 params->SetInteger("yDistance", -100); |
301 SendCommand("Input.synthesizeScrollGesture", params.Pass()); | 301 SendCommand("Input.synthesizeScrollGesture", std::move(params)); |
302 | 302 |
303 ASSERT_TRUE(content::ExecuteScriptAndExtractInt( | 303 ASSERT_TRUE(content::ExecuteScriptAndExtractInt( |
304 shell()->web_contents(), | 304 shell()->web_contents(), |
305 "domAutomationController.send(document.body.scrollTop)", &scroll_top)); | 305 "domAutomationController.send(document.body.scrollTop)", &scroll_top)); |
306 ASSERT_EQ(100, scroll_top); | 306 ASSERT_EQ(100, scroll_top); |
307 } | 307 } |
308 | 308 |
309 IN_PROC_BROWSER_TEST_F(DevToolsProtocolTest, SynthesizeTapGesture) { | 309 IN_PROC_BROWSER_TEST_F(DevToolsProtocolTest, SynthesizeTapGesture) { |
310 GURL test_url = GetTestUrl("devtools", "synthetic_gesture_tests.html"); | 310 GURL test_url = GetTestUrl("devtools", "synthetic_gesture_tests.html"); |
311 NavigateToURLBlockUntilNavigationsComplete(shell(), test_url, 1); | 311 NavigateToURLBlockUntilNavigationsComplete(shell(), test_url, 1); |
312 Attach(); | 312 Attach(); |
313 | 313 |
314 int scroll_top; | 314 int scroll_top; |
315 ASSERT_TRUE(content::ExecuteScriptAndExtractInt( | 315 ASSERT_TRUE(content::ExecuteScriptAndExtractInt( |
316 shell()->web_contents(), | 316 shell()->web_contents(), |
317 "domAutomationController.send(document.body.scrollTop)", &scroll_top)); | 317 "domAutomationController.send(document.body.scrollTop)", &scroll_top)); |
318 ASSERT_EQ(0, scroll_top); | 318 ASSERT_EQ(0, scroll_top); |
319 | 319 |
320 scoped_ptr<base::DictionaryValue> params(new base::DictionaryValue()); | 320 scoped_ptr<base::DictionaryValue> params(new base::DictionaryValue()); |
321 params->SetInteger("x", 16); | 321 params->SetInteger("x", 16); |
322 params->SetInteger("y", 16); | 322 params->SetInteger("y", 16); |
323 params->SetString("gestureSourceType", "touch"); | 323 params->SetString("gestureSourceType", "touch"); |
324 SendCommand("Input.synthesizeTapGesture", params.Pass()); | 324 SendCommand("Input.synthesizeTapGesture", std::move(params)); |
325 | 325 |
326 // The link that we just tapped should take us to the bottom of the page. The | 326 // The link that we just tapped should take us to the bottom of the page. The |
327 // new value of |document.body.scrollTop| will depend on the screen dimensions | 327 // new value of |document.body.scrollTop| will depend on the screen dimensions |
328 // of the device that we're testing on, but in any case it should be greater | 328 // of the device that we're testing on, but in any case it should be greater |
329 // than 0. | 329 // than 0. |
330 ASSERT_TRUE(content::ExecuteScriptAndExtractInt( | 330 ASSERT_TRUE(content::ExecuteScriptAndExtractInt( |
331 shell()->web_contents(), | 331 shell()->web_contents(), |
332 "domAutomationController.send(document.body.scrollTop)", &scroll_top)); | 332 "domAutomationController.send(document.body.scrollTop)", &scroll_top)); |
333 ASSERT_GT(scroll_top, 0); | 333 ASSERT_GT(scroll_top, 0); |
334 } | 334 } |
(...skipping 145 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
480 GURL("javascript:x=1"), | 480 GURL("javascript:x=1"), |
481 nullptr, | 481 nullptr, |
482 gfx::Size()); | 482 gfx::Size()); |
483 WaitForLoadStop(window->web_contents()); | 483 WaitForLoadStop(window->web_contents()); |
484 Attach(); | 484 Attach(); |
485 SendCommand("Page.reload", nullptr, false); | 485 SendCommand("Page.reload", nullptr, false); |
486 // Should not crash at this point. | 486 // Should not crash at this point. |
487 } | 487 } |
488 | 488 |
489 } // namespace content | 489 } // namespace content |
OLD | NEW |