Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(6)

Side by Side Diff: chrome/test/chromedriver/capabilities_unittest.cc

Issue 2785083002: Use devtools to set user agent in chromedriver (Closed)
Patch Set: Fix New Tab test Created 3 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. 1 // Copyright (c) 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 "chrome/test/chromedriver/capabilities.h" 5 #include "chrome/test/chromedriver/capabilities.h"
6 6
7 #include "base/values.h" 7 #include "base/values.h"
8 #include "chrome/test/chromedriver/chrome/log.h" 8 #include "chrome/test/chromedriver/chrome/log.h"
9 #include "chrome/test/chromedriver/chrome/status.h" 9 #include "chrome/test/chromedriver/chrome/status.h"
10 #include "chrome/test/chromedriver/logging.h" 10 #include "chrome/test/chromedriver/logging.h"
(...skipping 459 matching lines...) Expand 10 before | Expand all | Expand 10 after
470 470
471 TEST(ParseCapabilities, MobileEmulationUserAgent) { 471 TEST(ParseCapabilities, MobileEmulationUserAgent) {
472 Capabilities capabilities; 472 Capabilities capabilities;
473 base::DictionaryValue mobile_emulation; 473 base::DictionaryValue mobile_emulation;
474 mobile_emulation.SetString("userAgent", "Agent Smith"); 474 mobile_emulation.SetString("userAgent", "Agent Smith");
475 base::DictionaryValue caps; 475 base::DictionaryValue caps;
476 caps.Set("chromeOptions.mobileEmulation", mobile_emulation.DeepCopy()); 476 caps.Set("chromeOptions.mobileEmulation", mobile_emulation.DeepCopy());
477 Status status = capabilities.Parse(caps); 477 Status status = capabilities.Parse(caps);
478 ASSERT_TRUE(status.IsOk()); 478 ASSERT_TRUE(status.IsOk());
479 479
480 ASSERT_EQ(1u, capabilities.switches.GetSize()); 480 ASSERT_EQ("Agent Smith", capabilities.user_agent);
481 ASSERT_TRUE(capabilities.switches.HasSwitch("user-agent"));
482 ASSERT_EQ("Agent Smith", capabilities.switches.GetSwitchValue("user-agent"));
483 } 481 }
484 482
485 TEST(ParseCapabilities, MobileEmulationDeviceMetrics) { 483 TEST(ParseCapabilities, MobileEmulationDeviceMetrics) {
486 Capabilities capabilities; 484 Capabilities capabilities;
487 base::DictionaryValue mobile_emulation; 485 base::DictionaryValue mobile_emulation;
488 mobile_emulation.SetInteger("deviceMetrics.width", 360); 486 mobile_emulation.SetInteger("deviceMetrics.width", 360);
489 mobile_emulation.SetInteger("deviceMetrics.height", 640); 487 mobile_emulation.SetInteger("deviceMetrics.height", 640);
490 mobile_emulation.SetDouble("deviceMetrics.pixelRatio", 3.0); 488 mobile_emulation.SetDouble("deviceMetrics.pixelRatio", 3.0);
491 base::DictionaryValue caps; 489 base::DictionaryValue caps;
492 caps.Set("chromeOptions.mobileEmulation", mobile_emulation.DeepCopy()); 490 caps.Set("chromeOptions.mobileEmulation", mobile_emulation.DeepCopy());
493 Status status = capabilities.Parse(caps); 491 Status status = capabilities.Parse(caps);
494 ASSERT_TRUE(status.IsOk()); 492 ASSERT_TRUE(status.IsOk());
495 493
496 ASSERT_EQ(360, capabilities.device_metrics->width); 494 ASSERT_EQ(360, capabilities.device_metrics->width);
497 ASSERT_EQ(640, capabilities.device_metrics->height); 495 ASSERT_EQ(640, capabilities.device_metrics->height);
498 ASSERT_EQ(3.0, capabilities.device_metrics->device_scale_factor); 496 ASSERT_EQ(3.0, capabilities.device_metrics->device_scale_factor);
499 } 497 }
500 498
501 TEST(ParseCapabilities, MobileEmulationDeviceName) { 499 TEST(ParseCapabilities, MobileEmulationDeviceName) {
502 Capabilities capabilities; 500 Capabilities capabilities;
503 base::DictionaryValue mobile_emulation; 501 base::DictionaryValue mobile_emulation;
504 mobile_emulation.SetString("deviceName", "Google Nexus 5"); 502 mobile_emulation.SetString("deviceName", "Google Nexus 5");
505 base::DictionaryValue caps; 503 base::DictionaryValue caps;
506 caps.Set("chromeOptions.mobileEmulation", mobile_emulation.DeepCopy()); 504 caps.Set("chromeOptions.mobileEmulation", mobile_emulation.DeepCopy());
507 Status status = capabilities.Parse(caps); 505 Status status = capabilities.Parse(caps);
508 ASSERT_TRUE(status.IsOk()); 506 ASSERT_TRUE(status.IsOk());
509 507
510 ASSERT_EQ(1u, capabilities.switches.GetSize());
511 ASSERT_TRUE(capabilities.switches.HasSwitch("user-agent"));
512 ASSERT_EQ( 508 ASSERT_EQ(
513 "Mozilla/5.0 (Linux; Android 4.4.4; Nexus 5 Build/KTU84P) " 509 "Mozilla/5.0 (Linux; Android 4.4.4; Nexus 5 Build/KTU84P) "
514 "AppleWebKit/537.36 (KHTML, like Gecko) Chrome/38.0.2125.114 Mobile " 510 "AppleWebKit/537.36 (KHTML, like Gecko) Chrome/38.0.2125.114 Mobile "
515 "Safari/537.36", 511 "Safari/537.36",
516 capabilities.switches.GetSwitchValue("user-agent")); 512 capabilities.user_agent);
517 513
518 ASSERT_EQ(360, capabilities.device_metrics->width); 514 ASSERT_EQ(360, capabilities.device_metrics->width);
519 ASSERT_EQ(640, capabilities.device_metrics->height); 515 ASSERT_EQ(640, capabilities.device_metrics->height);
520 ASSERT_EQ(3.0, capabilities.device_metrics->device_scale_factor); 516 ASSERT_EQ(3.0, capabilities.device_metrics->device_scale_factor);
521 } 517 }
522 518
523 TEST(ParseCapabilities, MobileEmulationNotDict) { 519 TEST(ParseCapabilities, MobileEmulationNotDict) {
524 Capabilities capabilities; 520 Capabilities capabilities;
525 base::DictionaryValue caps; 521 base::DictionaryValue caps;
526 caps.SetString("chromeOptions.mobileEmulation", "Google Nexus 5"); 522 caps.SetString("chromeOptions.mobileEmulation", "Google Nexus 5");
(...skipping 28 matching lines...) Expand all
555 base::DictionaryValue mobile_emulation; 551 base::DictionaryValue mobile_emulation;
556 mobile_emulation.SetString("deviceName", "Google Nexus 5"); 552 mobile_emulation.SetString("deviceName", "Google Nexus 5");
557 mobile_emulation.SetInteger("deviceMetrics.width", 360); 553 mobile_emulation.SetInteger("deviceMetrics.width", 360);
558 mobile_emulation.SetInteger("deviceMetrics.height", 640); 554 mobile_emulation.SetInteger("deviceMetrics.height", 640);
559 mobile_emulation.SetDouble("deviceMetrics.pixelRatio", 3.0); 555 mobile_emulation.SetDouble("deviceMetrics.pixelRatio", 3.0);
560 base::DictionaryValue caps; 556 base::DictionaryValue caps;
561 caps.Set("chromeOptions.mobileEmulation", mobile_emulation.DeepCopy()); 557 caps.Set("chromeOptions.mobileEmulation", mobile_emulation.DeepCopy());
562 Status status = capabilities.Parse(caps); 558 Status status = capabilities.Parse(caps);
563 ASSERT_FALSE(status.IsOk()); 559 ASSERT_FALSE(status.IsOk());
564 } 560 }
OLDNEW
« no previous file with comments | « chrome/test/chromedriver/capabilities.cc ('k') | chrome/test/chromedriver/chrome/chrome_desktop_impl.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698