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

Side by Side Diff: trunk/src/chrome/browser/ui/search/instant_extended_interactive_uitest.cc

Issue 135903002: Revert 244407 "InstantExtended: remove dead code related to the ..." (Closed) Base URL: svn://svn.chromium.org/chrome/
Patch Set: Created 6 years, 11 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 | Annotate | Revision Log
OLDNEW
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 <sstream> 5 #include <sstream>
6 6
7 #include "base/command_line.h" 7 #include "base/command_line.h"
8 #include "base/metrics/histogram_base.h" 8 #include "base/metrics/histogram_base.h"
9 #include "base/metrics/histogram_samples.h" 9 #include "base/metrics/histogram_samples.h"
10 #include "base/metrics/statistics_recorder.h" 10 #include "base/metrics/statistics_recorder.h"
(...skipping 28 matching lines...) Expand all
39 #include "chrome/browser/search/search.h" 39 #include "chrome/browser/search/search.h"
40 #include "chrome/browser/search_engines/template_url_service.h" 40 #include "chrome/browser/search_engines/template_url_service.h"
41 #include "chrome/browser/search_engines/template_url_service_factory.h" 41 #include "chrome/browser/search_engines/template_url_service_factory.h"
42 #include "chrome/browser/task_manager/task_manager.h" 42 #include "chrome/browser/task_manager/task_manager.h"
43 #include "chrome/browser/task_manager/task_manager_browsertest_util.h" 43 #include "chrome/browser/task_manager/task_manager_browsertest_util.h"
44 #include "chrome/browser/themes/theme_service.h" 44 #include "chrome/browser/themes/theme_service.h"
45 #include "chrome/browser/themes/theme_service_factory.h" 45 #include "chrome/browser/themes/theme_service_factory.h"
46 #include "chrome/browser/ui/browser_list.h" 46 #include "chrome/browser/ui/browser_list.h"
47 #include "chrome/browser/ui/browser_tabstrip.h" 47 #include "chrome/browser/ui/browser_tabstrip.h"
48 #include "chrome/browser/ui/omnibox/omnibox_view.h" 48 #include "chrome/browser/ui/omnibox/omnibox_view.h"
49 #include "chrome/browser/ui/search/instant_ntp.h"
50 #include "chrome/browser/ui/search/instant_ntp_prerenderer.h"
49 #include "chrome/browser/ui/search/instant_tab.h" 51 #include "chrome/browser/ui/search/instant_tab.h"
50 #include "chrome/browser/ui/search/instant_test_utils.h" 52 #include "chrome/browser/ui/search/instant_test_utils.h"
51 #include "chrome/browser/ui/search/search_tab_helper.h" 53 #include "chrome/browser/ui/search/search_tab_helper.h"
52 #include "chrome/browser/ui/tabs/tab_strip_model.h" 54 #include "chrome/browser/ui/tabs/tab_strip_model.h"
53 #include "chrome/browser/ui/webui/theme_source.h" 55 #include "chrome/browser/ui/webui/theme_source.h"
54 #include "chrome/common/chrome_switches.h" 56 #include "chrome/common/chrome_switches.h"
55 #include "chrome/common/instant_types.h" 57 #include "chrome/common/instant_types.h"
56 #include "chrome/common/pref_names.h" 58 #include "chrome/common/pref_names.h"
57 #include "chrome/common/thumbnail_score.h" 59 #include "chrome/common/thumbnail_score.h"
58 #include "chrome/common/url_constants.h" 60 #include "chrome/common/url_constants.h"
(...skipping 85 matching lines...) Expand 10 before | Expand all | Expand 10 after
144 on_focus_changed_calls_(0), 146 on_focus_changed_calls_(0),
145 is_focused_(false), 147 is_focused_(false),
146 on_toggle_voice_search_calls_(0) { 148 on_toggle_voice_search_calls_(0) {
147 } 149 }
148 protected: 150 protected:
149 virtual void SetUpInProcessBrowserTestFixture() OVERRIDE { 151 virtual void SetUpInProcessBrowserTestFixture() OVERRIDE {
150 chrome::EnableQueryExtractionForTesting(); 152 chrome::EnableQueryExtractionForTesting();
151 ASSERT_TRUE(https_test_server().Start()); 153 ASSERT_TRUE(https_test_server().Start());
152 GURL instant_url = https_test_server().GetURL( 154 GURL instant_url = https_test_server().GetURL(
153 "files/instant_extended.html?strk=1&"); 155 "files/instant_extended.html?strk=1&");
154 GURL ntp_url = https_test_server().GetURL( 156 InstantTestBase::Init(instant_url, false);
155 "files/instant_extended_ntp.html?strk=1&");
156 InstantTestBase::Init(instant_url, ntp_url, false);
157 } 157 }
158 158
159 int64 GetHistogramCount(const char* name) { 159 int64 GetHistogramCount(const char* name) {
160 base::HistogramBase* histogram = 160 base::HistogramBase* histogram =
161 base::StatisticsRecorder::FindHistogram(name); 161 base::StatisticsRecorder::FindHistogram(name);
162 if (!histogram) { 162 if (!histogram) {
163 // If no histogram is found, it's possible that no values have been 163 // If no histogram is found, it's possible that no values have been
164 // recorded yet. Assume that the value is zero. 164 // recorded yet. Assume that the value is zero.
165 return 0; 165 return 0;
166 } 166 }
167 return histogram->SnapshotSamples()->TotalCount(); 167 return histogram->SnapshotSamples()->TotalCount();
168 } 168 }
169 169
170 void SendDownArrow() {
171 omnibox()->model()->OnUpOrDownKeyPressed(1);
172 // Wait for JavaScript to run the key handler by executing a blank script.
173 EXPECT_TRUE(ExecuteScript(std::string()));
174 }
175
176 void SendUpArrow() {
177 omnibox()->model()->OnUpOrDownKeyPressed(-1);
178 // Wait for JavaScript to run the key handler by executing a blank script.
179 EXPECT_TRUE(ExecuteScript(std::string()));
180 }
181
182 void SendEscape() {
183 omnibox()->model()->OnEscapeKeyPressed();
184 // Wait for JavaScript to run the key handler by executing a blank script.
185 EXPECT_TRUE(ExecuteScript(std::string()));
186 }
187
170 bool UpdateSearchState(content::WebContents* contents) WARN_UNUSED_RESULT { 188 bool UpdateSearchState(content::WebContents* contents) WARN_UNUSED_RESULT {
171 return GetIntFromJS(contents, "onMostVisitedChangedCalls", 189 return GetIntFromJS(contents, "onMostVisitedChangedCalls",
172 &on_most_visited_change_calls_) && 190 &on_most_visited_change_calls_) &&
173 GetIntFromJS(contents, "mostVisitedItemsCount", 191 GetIntFromJS(contents, "mostVisitedItemsCount",
174 &most_visited_items_count_) && 192 &most_visited_items_count_) &&
175 GetIntFromJS(contents, "firstMostVisitedItemId", 193 GetIntFromJS(contents, "firstMostVisitedItemId",
176 &first_most_visited_item_id_) && 194 &first_most_visited_item_id_) &&
177 GetIntFromJS(contents, "onNativeSuggestionsCalls", 195 GetIntFromJS(contents, "onNativeSuggestionsCalls",
178 &on_native_suggestions_calls_) && 196 &on_native_suggestions_calls_) &&
179 GetIntFromJS(contents, "onChangeCalls", 197 GetIntFromJS(contents, "onChangeCalls",
(...skipping 74 matching lines...) Expand 10 before | Expand all | Expand 10 after
254 InstantExtendedPrefetchTest() 272 InstantExtendedPrefetchTest()
255 : factory_(new net::URLFetcherImplFactory()), 273 : factory_(new net::URLFetcherImplFactory()),
256 fake_factory_(new net::FakeURLFetcherFactory(factory_.get())) { 274 fake_factory_(new net::FakeURLFetcherFactory(factory_.get())) {
257 } 275 }
258 276
259 virtual void SetUpInProcessBrowserTestFixture() OVERRIDE { 277 virtual void SetUpInProcessBrowserTestFixture() OVERRIDE {
260 chrome::EnableQueryExtractionForTesting(); 278 chrome::EnableQueryExtractionForTesting();
261 ASSERT_TRUE(https_test_server().Start()); 279 ASSERT_TRUE(https_test_server().Start());
262 GURL instant_url = https_test_server().GetURL( 280 GURL instant_url = https_test_server().GetURL(
263 "files/instant_extended.html?strk=1&"); 281 "files/instant_extended.html?strk=1&");
264 GURL ntp_url = https_test_server().GetURL( 282 InstantTestBase::Init(instant_url, true);
265 "files/instant_extended_ntp.html?strk=1&");
266 InstantTestBase::Init(instant_url, ntp_url, true);
267 } 283 }
268 284
269 virtual void SetUpCommandLine(CommandLine* command_line) OVERRIDE { 285 virtual void SetUpCommandLine(CommandLine* command_line) OVERRIDE {
270 command_line->AppendSwitchASCII( 286 command_line->AppendSwitchASCII(
271 switches::kForceFieldTrials, 287 switches::kForceFieldTrials,
272 "EmbeddedSearch/Group11 prefetch_results_srp:1/"); 288 "EmbeddedSearch/Group11 prefetch_results_srp:1 use_cacheable_ntp:0/");
273 } 289 }
274 290
275 net::FakeURLFetcherFactory* fake_factory() { return fake_factory_.get(); } 291 net::FakeURLFetcherFactory* fake_factory() { return fake_factory_.get(); }
276 292
277 private: 293 private:
278 // Used to instantiate FakeURLFetcherFactory. 294 // Used to instantiate FakeURLFetcherFactory.
279 scoped_ptr<net::URLFetcherImplFactory> factory_; 295 scoped_ptr<net::URLFetcherImplFactory> factory_;
280 296
281 // Used to mock default search provider suggest response. 297 // Used to mock default search provider suggest response.
282 scoped_ptr<net::FakeURLFetcherFactory> fake_factory_; 298 scoped_ptr<net::FakeURLFetcherFactory> fake_factory_;
(...skipping 29 matching lines...) Expand all
312 // loads a theme that provides a background image. 328 // loads a theme that provides a background image.
313 class InstantPolicyTest : public ExtensionBrowserTest, public InstantTestBase { 329 class InstantPolicyTest : public ExtensionBrowserTest, public InstantTestBase {
314 public: 330 public:
315 InstantPolicyTest() {} 331 InstantPolicyTest() {}
316 332
317 protected: 333 protected:
318 virtual void SetUpInProcessBrowserTestFixture() OVERRIDE { 334 virtual void SetUpInProcessBrowserTestFixture() OVERRIDE {
319 ASSERT_TRUE(https_test_server().Start()); 335 ASSERT_TRUE(https_test_server().Start());
320 GURL instant_url = https_test_server().GetURL( 336 GURL instant_url = https_test_server().GetURL(
321 "files/instant_extended.html?strk=1&"); 337 "files/instant_extended.html?strk=1&");
322 GURL ntp_url = https_test_server().GetURL( 338 InstantTestBase::Init(instant_url, false);
323 "files/instant_extended_ntp.html?strk=1&");
324 InstantTestBase::Init(instant_url, ntp_url, false);
325 } 339 }
326 340
327 void InstallThemeSource() { 341 void InstallThemeSource() {
328 ThemeSource* theme = new ThemeSource(profile()); 342 ThemeSource* theme = new ThemeSource(profile());
329 content::URLDataSource::Add(profile(), theme); 343 content::URLDataSource::Add(profile(), theme);
330 } 344 }
331 345
332 void InstallThemeAndVerify(const std::string& theme_dir, 346 void InstallThemeAndVerify(const std::string& theme_dir,
333 const std::string& theme_name) { 347 const std::string& theme_name) {
334 const extensions::Extension* theme = 348 const extensions::Extension* theme =
(...skipping 10 matching lines...) Expand all
345 ThemeServiceFactory::GetThemeForProfile( 359 ThemeServiceFactory::GetThemeForProfile(
346 ExtensionBrowserTest::browser()->profile()); 360 ExtensionBrowserTest::browser()->profile());
347 ASSERT_NE(static_cast<extensions::Extension*>(NULL), new_theme); 361 ASSERT_NE(static_cast<extensions::Extension*>(NULL), new_theme);
348 ASSERT_EQ(new_theme->name(), theme_name); 362 ASSERT_EQ(new_theme->name(), theme_name);
349 } 363 }
350 364
351 private: 365 private:
352 DISALLOW_COPY_AND_ASSIGN(InstantPolicyTest); 366 DISALLOW_COPY_AND_ASSIGN(InstantPolicyTest);
353 }; 367 };
354 368
369 IN_PROC_BROWSER_TEST_F(InstantExtendedNetworkTest, NTPReactsToNetworkChanges) {
370 // Setup Instant.
371 ASSERT_NO_FATAL_FAILURE(SetupInstant(browser()));
372 FocusOmniboxAndWaitForInstantNTPSupport();
373
374 InstantService* instant_service =
375 InstantServiceFactory::GetForProfile(browser()->profile());
376 ASSERT_NE(static_cast<InstantService*>(NULL), instant_service);
377
378 // The setup first initializes the platform specific NetworkChangeNotifier.
379 // The InstantExtendedNetworkTest replaces it with a fake, but by the time,
380 // InstantNTPPrerenderer has already registered itself. So the
381 // InstantNTPPrerenderer needs to register itself as NetworkChangeObserver
382 // again.
383 net::NetworkChangeNotifier::AddNetworkChangeObserver(
384 instant_service->ntp_prerenderer());
385
386 // The fake network change notifier will provide the network state to be
387 // offline, so the ntp will be local.
388 ASSERT_NE(static_cast<InstantNTP*>(NULL),
389 instant_service->ntp_prerenderer()->ntp());
390 EXPECT_TRUE(instant_service->ntp_prerenderer()->ntp()->IsLocal());
391
392 // Change the connect state, and wait for the notifications to be run, and NTP
393 // support to be determined.
394 SetConnectionType(net::NetworkChangeNotifier::CONNECTION_ETHERNET);
395 FocusOmniboxAndWaitForInstantNTPSupport();
396
397 // Verify the network state is fine, and InstantNTPPrerenderer doesn't want
398 // to switch to local NTP anymore.
399 EXPECT_FALSE(net::NetworkChangeNotifier::IsOffline());
400 EXPECT_FALSE(instant_service->ntp_prerenderer()->ShouldSwitchToLocalNTP());
401
402 // Open new tab.
403 ui_test_utils::NavigateToURLWithDisposition(
404 browser(),
405 GURL(chrome::kChromeUINewTabURL),
406 NEW_FOREGROUND_TAB,
407 ui_test_utils::BROWSER_TEST_WAIT_FOR_TAB);
408 content::WebContents* active_tab =
409 browser()->tab_strip_model()->GetActiveWebContents();
410
411 // Verify new NTP is not local.
412 EXPECT_TRUE(chrome::IsInstantNTP(active_tab));
413 EXPECT_NE(instant_service->ntp_prerenderer()->GetLocalInstantURL(),
414 active_tab->GetURL().spec());
415 ASSERT_NE(static_cast<InstantNTP*>(NULL),
416 instant_service->ntp_prerenderer()->ntp());
417 EXPECT_FALSE(instant_service->ntp_prerenderer()->ntp()->IsLocal());
418
419 SetConnectionType(net::NetworkChangeNotifier::CONNECTION_NONE);
420 FocusOmniboxAndWaitForInstantNTPSupport();
421
422 // Verify the network state is fine, and InstantNTPPrerenderer doesn't want
423 // to switch to local NTP anymore.
424 EXPECT_TRUE(net::NetworkChangeNotifier::IsOffline());
425 EXPECT_TRUE(instant_service->ntp_prerenderer()->ShouldSwitchToLocalNTP());
426
427 // Open new tab. Preloaded NTP contents should have been used.
428 ui_test_utils::NavigateToURLWithDisposition(
429 browser(),
430 GURL(chrome::kChromeUINewTabURL),
431 NEW_FOREGROUND_TAB,
432 ui_test_utils::BROWSER_TEST_WAIT_FOR_TAB);
433 active_tab = browser()->tab_strip_model()->GetActiveWebContents();
434
435 // Verify new NTP is not local.
436 EXPECT_TRUE(chrome::IsInstantNTP(active_tab));
437 EXPECT_EQ(instant_service->ntp_prerenderer()->GetLocalInstantURL(),
438 active_tab->GetURL().spec());
439 ASSERT_NE(static_cast<InstantNTP*>(NULL),
440 instant_service->ntp_prerenderer()->ntp());
441 EXPECT_TRUE(instant_service->ntp_prerenderer()->ntp()->IsLocal());
442 }
443
355 IN_PROC_BROWSER_TEST_F(InstantExtendedTest, SearchReusesInstantTab) { 444 IN_PROC_BROWSER_TEST_F(InstantExtendedTest, SearchReusesInstantTab) {
356 ASSERT_NO_FATAL_FAILURE(SetupInstant(browser())); 445 ASSERT_NO_FATAL_FAILURE(SetupInstant(browser()));
357 FocusOmnibox(); 446 FocusOmniboxAndWaitForInstantNTPSupport();
358 447
359 content::WindowedNotificationObserver observer( 448 content::WindowedNotificationObserver observer(
360 chrome::NOTIFICATION_INSTANT_TAB_SUPPORT_DETERMINED, 449 chrome::NOTIFICATION_INSTANT_TAB_SUPPORT_DETERMINED,
361 content::NotificationService::AllSources()); 450 content::NotificationService::AllSources());
362 SetOmniboxText("flowers"); 451 SetOmniboxText("flowers");
363 PressEnterAndWaitForNavigation(); 452 PressEnterAndWaitForNavigation();
364 observer.Wait(); 453 observer.Wait();
365 454
366 // Just did a regular search. 455 // Just did a regular search.
367 content::WebContents* active_tab = 456 content::WebContents* active_tab =
368 browser()->tab_strip_model()->GetActiveWebContents(); 457 browser()->tab_strip_model()->GetActiveWebContents();
369 ASSERT_THAT(active_tab->GetURL().spec(), HasSubstr("q=flowers")); 458 ASSERT_THAT(active_tab->GetURL().spec(), HasSubstr("q=flowers"));
370 ASSERT_TRUE(UpdateSearchState(active_tab)); 459 ASSERT_TRUE(UpdateSearchState(active_tab));
371 ASSERT_EQ(0, submit_count_); 460 ASSERT_EQ(0, submit_count_);
372 461
373 SetOmniboxText("puppies"); 462 SetOmniboxText("puppies");
374 PressEnterAndWaitForNavigation(); 463 PressEnterAndWaitForNavigation();
375 464
376 // Should have reused the tab and sent an onsubmit message. 465 // Should have reused the tab and sent an onsubmit message.
377 active_tab = browser()->tab_strip_model()->GetActiveWebContents(); 466 active_tab = browser()->tab_strip_model()->GetActiveWebContents();
378 ASSERT_THAT(active_tab->GetURL().spec(), HasSubstr("q=puppies")); 467 ASSERT_THAT(active_tab->GetURL().spec(), HasSubstr("q=puppies"));
379 ASSERT_TRUE(UpdateSearchState(active_tab)); 468 ASSERT_TRUE(UpdateSearchState(active_tab));
380 EXPECT_EQ(1, submit_count_); 469 EXPECT_EQ(1, submit_count_);
381 } 470 }
382 471
383 IN_PROC_BROWSER_TEST_F(InstantExtendedTest, 472 IN_PROC_BROWSER_TEST_F(InstantExtendedTest,
384 SearchDoesntReuseInstantTabWithoutSupport) { 473 SearchDoesntReuseInstantTabWithoutSupport) {
385 ASSERT_NO_FATAL_FAILURE(SetupInstant(browser())); 474 ASSERT_NO_FATAL_FAILURE(SetupInstant(browser()));
386 FocusOmnibox(); 475 FocusOmniboxAndWaitForInstantNTPSupport();
387 476
388 // Don't wait for the navigation to complete. 477 // Don't wait for the navigation to complete.
389 SetOmniboxText("flowers"); 478 SetOmniboxText("flowers");
390 browser()->window()->GetLocationBar()->AcceptInput(); 479 browser()->window()->GetLocationBar()->AcceptInput();
391 480
392 SetOmniboxText("puppies"); 481 SetOmniboxText("puppies");
393 browser()->window()->GetLocationBar()->AcceptInput(); 482 browser()->window()->GetLocationBar()->AcceptInput();
394 483
395 // Should not have reused the tab. 484 // Should not have reused the tab.
396 ASSERT_THAT( 485 ASSERT_THAT(
397 browser()->tab_strip_model()->GetActiveWebContents()->GetURL().spec(), 486 browser()->tab_strip_model()->GetActiveWebContents()->GetURL().spec(),
398 HasSubstr("q=puppies")); 487 HasSubstr("q=puppies"));
399 } 488 }
400 489
401 IN_PROC_BROWSER_TEST_F(InstantExtendedTest, 490 IN_PROC_BROWSER_TEST_F(InstantExtendedTest,
402 TypedSearchURLDoesntReuseInstantTab) { 491 TypedSearchURLDoesntReuseInstantTab) {
403 ASSERT_NO_FATAL_FAILURE(SetupInstant(browser())); 492 ASSERT_NO_FATAL_FAILURE(SetupInstant(browser()));
404 FocusOmnibox(); 493 FocusOmniboxAndWaitForInstantNTPSupport();
405 494
406 // Create an observer to wait for the instant tab to support Instant. 495 // Create an observer to wait for the instant tab to support Instant.
407 content::WindowedNotificationObserver observer_1( 496 content::WindowedNotificationObserver observer_1(
408 chrome::NOTIFICATION_INSTANT_TAB_SUPPORT_DETERMINED, 497 chrome::NOTIFICATION_INSTANT_TAB_SUPPORT_DETERMINED,
409 content::NotificationService::AllSources()); 498 content::NotificationService::AllSources());
410 SetOmniboxText("flowers"); 499 SetOmniboxText("flowers");
411 PressEnterAndWaitForNavigation(); 500 PressEnterAndWaitForNavigation();
412 observer_1.Wait(); 501 observer_1.Wait();
413 502
414 // Just did a regular search. 503 // Just did a regular search.
(...skipping 11 matching lines...) Expand all
426 PressEnterAndWaitForNavigation(); 515 PressEnterAndWaitForNavigation();
427 observer_2.Wait(); 516 observer_2.Wait();
428 517
429 // Should not have reused the tab. 518 // Should not have reused the tab.
430 active_tab = browser()->tab_strip_model()->GetActiveWebContents(); 519 active_tab = browser()->tab_strip_model()->GetActiveWebContents();
431 ASSERT_THAT(active_tab->GetURL().spec(), HasSubstr("q=puppies")); 520 ASSERT_THAT(active_tab->GetURL().spec(), HasSubstr("q=puppies"));
432 } 521 }
433 522
434 IN_PROC_BROWSER_TEST_F(InstantExtendedTest, OmniboxMarginSetForSearchURLs) { 523 IN_PROC_BROWSER_TEST_F(InstantExtendedTest, OmniboxMarginSetForSearchURLs) {
435 ASSERT_NO_FATAL_FAILURE(SetupInstant(browser())); 524 ASSERT_NO_FATAL_FAILURE(SetupInstant(browser()));
436 FocusOmnibox(); 525 FocusOmniboxAndWaitForInstantNTPSupport();
437 526
438 // Create an observer to wait for the instant tab to support Instant. 527 // Create an observer to wait for the instant tab to support Instant.
439 content::WindowedNotificationObserver observer( 528 content::WindowedNotificationObserver observer(
440 chrome::NOTIFICATION_INSTANT_TAB_SUPPORT_DETERMINED, 529 chrome::NOTIFICATION_INSTANT_TAB_SUPPORT_DETERMINED,
441 content::NotificationService::AllSources()); 530 content::NotificationService::AllSources());
442 531
443 SetOmniboxText("flowers"); 532 SetOmniboxText("flowers");
444 browser()->window()->GetLocationBar()->AcceptInput(); 533 browser()->window()->GetLocationBar()->AcceptInput();
445 observer.Wait(); 534 observer.Wait();
446 535
447 const std::string& url = 536 const std::string& url =
448 browser()->tab_strip_model()->GetActiveWebContents()->GetURL().spec(); 537 browser()->tab_strip_model()->GetActiveWebContents()->GetURL().spec();
449 // Make sure we actually used search_url, not instant_url. 538 // Make sure we actually used search_url, not instant_url.
450 ASSERT_THAT(url, HasSubstr("&is_search")); 539 ASSERT_THAT(url, HasSubstr("&is_search"));
451 EXPECT_THAT(url, HasSubstr("&es_sm=")); 540 EXPECT_THAT(url, HasSubstr("&es_sm="));
452 } 541 }
453 542
454 // Test to verify that switching tabs should not dispatch onmostvisitedchanged 543 // Test to verify that switching tabs should not dispatch onmostvisitedchanged
455 // events. 544 // events.
456 IN_PROC_BROWSER_TEST_F(InstantExtendedTest, NoMostVisitedChangedOnTabSwitch) { 545 IN_PROC_BROWSER_TEST_F(InstantExtendedTest, NoMostVisitedChangedOnTabSwitch) {
457 // Initialize Instant. 546 // Initialize Instant.
458 ASSERT_NO_FATAL_FAILURE(SetupInstant(browser())); 547 ASSERT_NO_FATAL_FAILURE(SetupInstant(browser()));
548 FocusOmniboxAndWaitForInstantNTPSupport();
459 549
460 // Open new tab. 550 // Open new tab. Preloaded NTP contents should have been used.
461 ui_test_utils::NavigateToURLWithDisposition( 551 ui_test_utils::NavigateToURLWithDisposition(
462 browser(), 552 browser(),
463 GURL(chrome::kChromeUINewTabURL), 553 GURL(chrome::kChromeUINewTabURL),
464 NEW_FOREGROUND_TAB, 554 NEW_FOREGROUND_TAB,
465 ui_test_utils::BROWSER_TEST_WAIT_FOR_TAB | 555 ui_test_utils::BROWSER_TEST_WAIT_FOR_TAB);
466 ui_test_utils::BROWSER_TEST_WAIT_FOR_NAVIGATION);
467 EXPECT_EQ(2, browser()->tab_strip_model()->count()); 556 EXPECT_EQ(2, browser()->tab_strip_model()->count());
468 557
469 // Make sure new tab received the onmostvisitedchanged event once. 558 // Make sure new tab received the onmostvisitedchanged event once.
470 content::WebContents* active_tab = 559 content::WebContents* active_tab =
471 browser()->tab_strip_model()->GetActiveWebContents(); 560 browser()->tab_strip_model()->GetActiveWebContents();
472 EXPECT_TRUE(UpdateSearchState(active_tab)); 561 EXPECT_TRUE(UpdateSearchState(active_tab));
473 EXPECT_EQ(1, on_most_visited_change_calls_); 562 EXPECT_EQ(1, on_most_visited_change_calls_);
474 563
475 // Activate the previous tab. 564 // Activate the previous tab.
476 browser()->tab_strip_model()->ActivateTabAt(0, false); 565 browser()->tab_strip_model()->ActivateTabAt(0, false);
477 566
478 // Switch back to new tab. 567 // Switch back to new tab.
479 browser()->tab_strip_model()->ActivateTabAt(1, false); 568 browser()->tab_strip_model()->ActivateTabAt(1, false);
480 569
481 // Confirm that new tab got no onmostvisitedchanged event. 570 // Confirm that new tab got no onmostvisitedchanged event.
482 active_tab = browser()->tab_strip_model()->GetActiveWebContents(); 571 active_tab = browser()->tab_strip_model()->GetActiveWebContents();
483 EXPECT_TRUE(UpdateSearchState(active_tab)); 572 EXPECT_TRUE(UpdateSearchState(active_tab));
484 EXPECT_EQ(1, on_most_visited_change_calls_); 573 EXPECT_EQ(1, on_most_visited_change_calls_);
485 } 574 }
486 575
487 IN_PROC_BROWSER_TEST_F(InstantPolicyTest, ThemeBackgroundAccess) { 576 IN_PROC_BROWSER_TEST_F(InstantPolicyTest, ThemeBackgroundAccess) {
488 InstallThemeSource(); 577 InstallThemeSource();
489 ASSERT_NO_FATAL_FAILURE(InstallThemeAndVerify("theme", "camo theme")); 578 ASSERT_NO_FATAL_FAILURE(InstallThemeAndVerify("theme", "camo theme"));
490 ASSERT_NO_FATAL_FAILURE(SetupInstant(browser())); 579 ASSERT_NO_FATAL_FAILURE(SetupInstant(browser()));
580 FocusOmniboxAndWaitForInstantNTPSupport();
491 581
492 // The "Instant" New Tab should have access to chrome-search: scheme but not 582 // The "Instant" New Tab should have access to chrome-search: scheme but not
493 // chrome: scheme. 583 // chrome: scheme.
494 ui_test_utils::NavigateToURLWithDisposition( 584 ui_test_utils::NavigateToURLWithDisposition(
495 browser(), 585 browser(),
496 GURL(chrome::kChromeUINewTabURL), 586 GURL(chrome::kChromeUINewTabURL),
497 NEW_FOREGROUND_TAB, 587 NEW_FOREGROUND_TAB,
498 ui_test_utils::BROWSER_TEST_WAIT_FOR_TAB | 588 ui_test_utils::BROWSER_TEST_NONE);
499 ui_test_utils::BROWSER_TEST_WAIT_FOR_NAVIGATION);
500 589
501 content::RenderViewHost* rvh = 590 content::RenderViewHost* rvh =
502 browser()->tab_strip_model()->GetActiveWebContents()->GetRenderViewHost(); 591 browser()->tab_strip_model()->GetActiveWebContents()->GetRenderViewHost();
503 592
504 const std::string chrome_url("chrome://theme/IDR_THEME_NTP_BACKGROUND"); 593 const std::string chrome_url("chrome://theme/IDR_THEME_NTP_BACKGROUND");
505 const std::string search_url( 594 const std::string search_url(
506 "chrome-search://theme/IDR_THEME_NTP_BACKGROUND"); 595 "chrome-search://theme/IDR_THEME_NTP_BACKGROUND");
507 bool loaded = false; 596 bool loaded = false;
508 ASSERT_TRUE(LoadImage(rvh, chrome_url, &loaded)); 597 ASSERT_TRUE(LoadImage(rvh, chrome_url, &loaded));
509 EXPECT_FALSE(loaded) << chrome_url; 598 EXPECT_FALSE(loaded) << chrome_url;
510 ASSERT_TRUE(LoadImage(rvh, search_url, &loaded)); 599 ASSERT_TRUE(LoadImage(rvh, search_url, &loaded));
511 EXPECT_TRUE(loaded) << search_url; 600 EXPECT_TRUE(loaded) << search_url;
512 } 601 }
513 602
514 IN_PROC_BROWSER_TEST_F(InstantPolicyTest, 603 IN_PROC_BROWSER_TEST_F(InstantPolicyTest,
515 NoThemeBackgroundChangeEventOnTabSwitch) { 604 NoThemeBackgroundChangeEventOnTabSwitch) {
516 InstallThemeSource(); 605 InstallThemeSource();
517 ASSERT_NO_FATAL_FAILURE(SetupInstant(browser())); 606 ASSERT_NO_FATAL_FAILURE(SetupInstant(browser()));
607 FocusOmniboxAndWaitForInstantNTPSupport();
518 608
519 // Install a theme. 609 // Install a theme.
520 ASSERT_NO_FATAL_FAILURE(InstallThemeAndVerify("theme", "camo theme")); 610 ASSERT_NO_FATAL_FAILURE(InstallThemeAndVerify("theme", "camo theme"));
521 EXPECT_EQ(1, browser()->tab_strip_model()->count()); 611 EXPECT_EQ(1, browser()->tab_strip_model()->count());
522 612
523 // Open new tab. 613 // Open new tab. Preloaded NTP contents should have been used.
524 ui_test_utils::NavigateToURLWithDisposition( 614 ui_test_utils::NavigateToURLWithDisposition(
525 browser(), 615 browser(),
526 GURL(chrome::kChromeUINewTabURL), 616 GURL(chrome::kChromeUINewTabURL),
527 NEW_FOREGROUND_TAB, 617 NEW_FOREGROUND_TAB,
528 ui_test_utils::BROWSER_TEST_WAIT_FOR_TAB | 618 ui_test_utils::BROWSER_TEST_NONE);
529 ui_test_utils::BROWSER_TEST_WAIT_FOR_NAVIGATION);
530 EXPECT_EQ(2, browser()->tab_strip_model()->count()); 619 EXPECT_EQ(2, browser()->tab_strip_model()->count());
531 620
532 content::WebContents* active_tab = 621 content::WebContents* active_tab =
533 browser()->tab_strip_model()->GetActiveWebContents(); 622 browser()->tab_strip_model()->GetActiveWebContents();
534 ASSERT_EQ(1, browser()->tab_strip_model()->active_index()); 623 ASSERT_EQ(1, browser()->tab_strip_model()->active_index());
535 int on_theme_changed_calls = 0; 624 int on_theme_changed_calls = 0;
536 EXPECT_TRUE(GetIntFromJS(active_tab, "onThemeChangedCalls", 625 EXPECT_TRUE(GetIntFromJS(active_tab, "onThemeChangedCalls",
537 &on_theme_changed_calls)); 626 &on_theme_changed_calls));
538 EXPECT_EQ(1, on_theme_changed_calls); 627 EXPECT_EQ(1, on_theme_changed_calls);
539 628
(...skipping 17 matching lines...) Expand all
557 // Flaky on Linux: http://crbug.com/265971 646 // Flaky on Linux: http://crbug.com/265971
558 #if defined(OS_LINUX) 647 #if defined(OS_LINUX)
559 #define MAYBE_SendThemeBackgroundChangedEvent DISABLED_SendThemeBackgroundChange dEvent 648 #define MAYBE_SendThemeBackgroundChangedEvent DISABLED_SendThemeBackgroundChange dEvent
560 #else 649 #else
561 #define MAYBE_SendThemeBackgroundChangedEvent SendThemeBackgroundChangedEvent 650 #define MAYBE_SendThemeBackgroundChangedEvent SendThemeBackgroundChangedEvent
562 #endif 651 #endif
563 IN_PROC_BROWSER_TEST_F(InstantPolicyTest, 652 IN_PROC_BROWSER_TEST_F(InstantPolicyTest,
564 MAYBE_SendThemeBackgroundChangedEvent) { 653 MAYBE_SendThemeBackgroundChangedEvent) {
565 InstallThemeSource(); 654 InstallThemeSource();
566 ASSERT_NO_FATAL_FAILURE(SetupInstant(browser())); 655 ASSERT_NO_FATAL_FAILURE(SetupInstant(browser()));
656 FocusOmniboxAndWaitForInstantNTPSupport();
567 657
568 // Install a theme. 658 // Install a theme.
569 ASSERT_NO_FATAL_FAILURE(InstallThemeAndVerify("theme", "camo theme")); 659 ASSERT_NO_FATAL_FAILURE(InstallThemeAndVerify("theme", "camo theme"));
570 660
571 // Open new tab. 661 // Open new tab. Preloaded NTP contents should have been used.
572 ui_test_utils::NavigateToURLWithDisposition( 662 ui_test_utils::NavigateToURLWithDisposition(
573 browser(), 663 browser(),
574 GURL(chrome::kChromeUINewTabURL), 664 GURL(chrome::kChromeUINewTabURL),
575 NEW_FOREGROUND_TAB, 665 NEW_FOREGROUND_TAB,
576 ui_test_utils::BROWSER_TEST_WAIT_FOR_TAB | 666 ui_test_utils::BROWSER_TEST_NONE);
577 ui_test_utils::BROWSER_TEST_WAIT_FOR_NAVIGATION);
578 EXPECT_EQ(2, browser()->tab_strip_model()->count()); 667 EXPECT_EQ(2, browser()->tab_strip_model()->count());
579 668
580 // Make sure new tab received an onthemechanged event. 669 // Make sure new tab received an onthemechanged event.
581 content::WebContents* active_tab = 670 content::WebContents* active_tab =
582 browser()->tab_strip_model()->GetActiveWebContents(); 671 browser()->tab_strip_model()->GetActiveWebContents();
583 ASSERT_EQ(1, browser()->tab_strip_model()->active_index()); 672 ASSERT_EQ(1, browser()->tab_strip_model()->active_index());
584 int on_theme_changed_calls = 0; 673 int on_theme_changed_calls = 0;
585 EXPECT_TRUE(GetIntFromJS(active_tab, "onThemeChangedCalls", 674 EXPECT_TRUE(GetIntFromJS(active_tab, "onThemeChangedCalls",
586 &on_theme_changed_calls)); 675 &on_theme_changed_calls));
587 EXPECT_EQ(1, on_theme_changed_calls); 676 EXPECT_EQ(1, on_theme_changed_calls);
(...skipping 14 matching lines...) Expand all
602 #else 691 #else
603 #define MAYBE_UpdateSearchQueryOnBackNavigation UpdateSearchQueryOnBackNavigatio n 692 #define MAYBE_UpdateSearchQueryOnBackNavigation UpdateSearchQueryOnBackNavigatio n
604 #endif 693 #endif
605 // Test to verify that the omnibox search query is updated on browser 694 // Test to verify that the omnibox search query is updated on browser
606 // back button press event. 695 // back button press event.
607 IN_PROC_BROWSER_TEST_F(InstantExtendedTest, 696 IN_PROC_BROWSER_TEST_F(InstantExtendedTest,
608 MAYBE_UpdateSearchQueryOnBackNavigation) { 697 MAYBE_UpdateSearchQueryOnBackNavigation) {
609 ASSERT_NO_FATAL_FAILURE(SetupInstant(browser())); 698 ASSERT_NO_FATAL_FAILURE(SetupInstant(browser()));
610 699
611 // Focus omnibox and confirm overlay isn't shown. 700 // Focus omnibox and confirm overlay isn't shown.
612 FocusOmnibox(); 701 FocusOmniboxAndWaitForInstantNTPSupport();
613 702
614 // Create an observer to wait for the instant tab to support Instant. 703 // Create an observer to wait for the instant tab to support Instant.
615 content::WindowedNotificationObserver observer( 704 content::WindowedNotificationObserver observer(
616 chrome::NOTIFICATION_INSTANT_TAB_SUPPORT_DETERMINED, 705 chrome::NOTIFICATION_INSTANT_TAB_SUPPORT_DETERMINED,
617 content::NotificationService::AllSources()); 706 content::NotificationService::AllSources());
618 707
619 SetOmniboxText("flowers"); 708 SetOmniboxText("flowers");
620 // Commit the search by pressing 'Enter'. 709 // Commit the search by pressing 'Enter'.
621 PressEnterAndWaitForNavigation(); 710 PressEnterAndWaitForNavigation();
622 observer.Wait(); 711 observer.Wait();
(...skipping 26 matching lines...) Expand all
649 } 738 }
650 739
651 // Flaky: crbug.com/253092. 740 // Flaky: crbug.com/253092.
652 // Test to verify that the omnibox search query is updated on browser 741 // Test to verify that the omnibox search query is updated on browser
653 // forward button press events. 742 // forward button press events.
654 IN_PROC_BROWSER_TEST_F(InstantExtendedTest, 743 IN_PROC_BROWSER_TEST_F(InstantExtendedTest,
655 DISABLED_UpdateSearchQueryOnForwardNavigation) { 744 DISABLED_UpdateSearchQueryOnForwardNavigation) {
656 ASSERT_NO_FATAL_FAILURE(SetupInstant(browser())); 745 ASSERT_NO_FATAL_FAILURE(SetupInstant(browser()));
657 746
658 // Focus omnibox and confirm overlay isn't shown. 747 // Focus omnibox and confirm overlay isn't shown.
659 FocusOmnibox(); 748 FocusOmniboxAndWaitForInstantNTPSupport();
660 749
661 // Create an observer to wait for the instant tab to support Instant. 750 // Create an observer to wait for the instant tab to support Instant.
662 content::WindowedNotificationObserver observer( 751 content::WindowedNotificationObserver observer(
663 chrome::NOTIFICATION_INSTANT_TAB_SUPPORT_DETERMINED, 752 chrome::NOTIFICATION_INSTANT_TAB_SUPPORT_DETERMINED,
664 content::NotificationService::AllSources()); 753 content::NotificationService::AllSources());
665 754
666 SetOmniboxText("flowers"); 755 SetOmniboxText("flowers");
667 // Commit the search by pressing 'Enter'. 756 // Commit the search by pressing 'Enter'.
668 PressEnterAndWaitForNavigation(); 757 PressEnterAndWaitForNavigation();
669 observer.Wait(); 758 observer.Wait();
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after
702 // Commit the search by pressing 'Enter'. 791 // Commit the search by pressing 'Enter'.
703 FocusOmnibox(); 792 FocusOmnibox();
704 EXPECT_EQ(ASCIIToUTF16("cattles"), omnibox()->GetText()); 793 EXPECT_EQ(ASCIIToUTF16("cattles"), omnibox()->GetText());
705 PressEnterAndWaitForNavigation(); 794 PressEnterAndWaitForNavigation();
706 EXPECT_EQ(ASCIIToUTF16("cattles"), omnibox()->GetText()); 795 EXPECT_EQ(ASCIIToUTF16("cattles"), omnibox()->GetText());
707 } 796 }
708 797
709 // Flaky on all bots since re-enabled in r208032, crbug.com/253092 798 // Flaky on all bots since re-enabled in r208032, crbug.com/253092
710 IN_PROC_BROWSER_TEST_F(InstantExtendedTest, DISABLED_NavigateBackToNTP) { 799 IN_PROC_BROWSER_TEST_F(InstantExtendedTest, DISABLED_NavigateBackToNTP) {
711 ASSERT_NO_FATAL_FAILURE(SetupInstant(browser())); 800 ASSERT_NO_FATAL_FAILURE(SetupInstant(browser()));
712 FocusOmnibox(); 801 FocusOmniboxAndWaitForInstantNTPSupport();
713 802
714 // Open a new tab page. 803 // Open a new tab page.
715 ui_test_utils::NavigateToURLWithDisposition( 804 ui_test_utils::NavigateToURLWithDisposition(
716 browser(), 805 browser(),
717 GURL(chrome::kChromeUINewTabURL), 806 GURL(chrome::kChromeUINewTabURL),
718 NEW_FOREGROUND_TAB, 807 NEW_FOREGROUND_TAB,
719 ui_test_utils::BROWSER_TEST_WAIT_FOR_TAB | 808 ui_test_utils::BROWSER_TEST_WAIT_FOR_TAB);
720 ui_test_utils::BROWSER_TEST_WAIT_FOR_NAVIGATION);
721 EXPECT_EQ(2, browser()->tab_strip_model()->count()); 809 EXPECT_EQ(2, browser()->tab_strip_model()->count());
722 810
723 content::WindowedNotificationObserver observer( 811 content::WindowedNotificationObserver observer(
724 chrome::NOTIFICATION_INSTANT_TAB_SUPPORT_DETERMINED, 812 chrome::NOTIFICATION_INSTANT_TAB_SUPPORT_DETERMINED,
725 content::NotificationService::AllSources()); 813 content::NotificationService::AllSources());
726 SetOmniboxText("flowers"); 814 SetOmniboxText("flowers");
727 PressEnterAndWaitForNavigation(); 815 PressEnterAndWaitForNavigation();
728 observer.Wait(); 816 observer.Wait();
729 817
730 EXPECT_EQ(ASCIIToUTF16("flowers"), omnibox()->GetText()); 818 EXPECT_EQ(ASCIIToUTF16("flowers"), omnibox()->GetText());
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after
763 851
764 active_tab = browser()->tab_strip_model()->GetActiveWebContents(); 852 active_tab = browser()->tab_strip_model()->GetActiveWebContents();
765 EXPECT_TRUE(chrome::IsInstantNTP(active_tab)); 853 EXPECT_TRUE(chrome::IsInstantNTP(active_tab));
766 } 854 }
767 855
768 // Flaky: crbug.com/267119 856 // Flaky: crbug.com/267119
769 IN_PROC_BROWSER_TEST_F(InstantExtendedTest, 857 IN_PROC_BROWSER_TEST_F(InstantExtendedTest,
770 DISABLED_DispatchMVChangeEventWhileNavigatingBackToNTP) { 858 DISABLED_DispatchMVChangeEventWhileNavigatingBackToNTP) {
771 // Setup Instant. 859 // Setup Instant.
772 ASSERT_NO_FATAL_FAILURE(SetupInstant(browser())); 860 ASSERT_NO_FATAL_FAILURE(SetupInstant(browser()));
773 FocusOmnibox(); 861 FocusOmniboxAndWaitForInstantNTPSupport();
774 862
775 // Open new tab. 863 // Open new tab. Preloaded NTP contents should have been used.
776 ui_test_utils::NavigateToURLWithDisposition( 864 ui_test_utils::NavigateToURLWithDisposition(
777 browser(), 865 browser(),
778 GURL(chrome::kChromeUINewTabURL), 866 GURL(chrome::kChromeUINewTabURL),
779 NEW_FOREGROUND_TAB, 867 NEW_FOREGROUND_TAB,
780 ui_test_utils::BROWSER_TEST_WAIT_FOR_TAB | 868 ui_test_utils::BROWSER_TEST_WAIT_FOR_TAB);
781 ui_test_utils::BROWSER_TEST_WAIT_FOR_NAVIGATION);
782 869
783 content::WebContents* active_tab = 870 content::WebContents* active_tab =
784 browser()->tab_strip_model()->GetActiveWebContents(); 871 browser()->tab_strip_model()->GetActiveWebContents();
785 EXPECT_TRUE(UpdateSearchState(active_tab)); 872 EXPECT_TRUE(UpdateSearchState(active_tab));
786 EXPECT_EQ(1, on_most_visited_change_calls_); 873 EXPECT_EQ(1, on_most_visited_change_calls_);
787 874
788 content::WindowedNotificationObserver observer( 875 content::WindowedNotificationObserver observer(
789 content::NOTIFICATION_LOAD_STOP, 876 content::NOTIFICATION_LOAD_STOP,
790 content::NotificationService::AllSources()); 877 content::NotificationService::AllSources());
791 // Set the text and press enter to navigate from NTP. 878 // Set the text and press enter to navigate from NTP.
(...skipping 13 matching lines...) Expand all
805 892
806 // Verify that onmostvisitedchange event is dispatched when we navigate from 893 // Verify that onmostvisitedchange event is dispatched when we navigate from
807 // SRP to NTP. 894 // SRP to NTP.
808 active_tab = browser()->tab_strip_model()->GetActiveWebContents(); 895 active_tab = browser()->tab_strip_model()->GetActiveWebContents();
809 EXPECT_TRUE(UpdateSearchState(active_tab)); 896 EXPECT_TRUE(UpdateSearchState(active_tab));
810 EXPECT_EQ(1, on_most_visited_change_calls_); 897 EXPECT_EQ(1, on_most_visited_change_calls_);
811 } 898 }
812 899
813 IN_PROC_BROWSER_TEST_F(InstantExtendedPrefetchTest, SetPrefetchQuery) { 900 IN_PROC_BROWSER_TEST_F(InstantExtendedPrefetchTest, SetPrefetchQuery) {
814 ASSERT_NO_FATAL_FAILURE(SetupInstant(browser())); 901 ASSERT_NO_FATAL_FAILURE(SetupInstant(browser()));
815 FocusOmnibox(); 902 FocusOmniboxAndWaitForInstantNTPSupport();
816 903
817 content::WindowedNotificationObserver new_tab_observer( 904 content::WindowedNotificationObserver new_tab_observer(
818 content::NOTIFICATION_NAV_ENTRY_COMMITTED, 905 content::NOTIFICATION_NAV_ENTRY_COMMITTED,
819 content::NotificationService::AllSources()); 906 content::NotificationService::AllSources());
820 ui_test_utils::NavigateToURLWithDisposition( 907 ui_test_utils::NavigateToURLWithDisposition(
821 browser(), 908 browser(),
822 GURL(chrome::kChromeUINewTabURL), 909 GURL(chrome::kChromeUINewTabURL),
823 CURRENT_TAB, 910 CURRENT_TAB,
824 ui_test_utils::BROWSER_TEST_NONE); 911 ui_test_utils::BROWSER_TEST_NONE);
825 new_tab_observer.Wait(); 912 new_tab_observer.Wait();
(...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after
865 content::WebContents* active_tab = 952 content::WebContents* active_tab =
866 browser()->tab_strip_model()->GetActiveWebContents(); 953 browser()->tab_strip_model()->GetActiveWebContents();
867 ASSERT_TRUE(UpdateSearchState(active_tab)); 954 ASSERT_TRUE(UpdateSearchState(active_tab));
868 ASSERT_TRUE(SearchProvider::ShouldPrefetch(*( 955 ASSERT_TRUE(SearchProvider::ShouldPrefetch(*(
869 omnibox()->model()->result().default_match()))); 956 omnibox()->model()->result().default_match())));
870 ASSERT_EQ("puppy", prefetch_query_value_); 957 ASSERT_EQ("puppy", prefetch_query_value_);
871 } 958 }
872 959
873 IN_PROC_BROWSER_TEST_F(InstantExtendedPrefetchTest, ClearPrefetchedResults) { 960 IN_PROC_BROWSER_TEST_F(InstantExtendedPrefetchTest, ClearPrefetchedResults) {
874 ASSERT_NO_FATAL_FAILURE(SetupInstant(browser())); 961 ASSERT_NO_FATAL_FAILURE(SetupInstant(browser()));
875 FocusOmnibox(); 962 FocusOmniboxAndWaitForInstantNTPSupport();
876 963
877 content::WindowedNotificationObserver new_tab_observer( 964 content::WindowedNotificationObserver new_tab_observer(
878 content::NOTIFICATION_NAV_ENTRY_COMMITTED, 965 content::NOTIFICATION_NAV_ENTRY_COMMITTED,
879 content::NotificationService::AllSources()); 966 content::NotificationService::AllSources());
880 ui_test_utils::NavigateToURLWithDisposition( 967 ui_test_utils::NavigateToURLWithDisposition(
881 browser(), 968 browser(),
882 GURL(chrome::kChromeUINewTabURL), 969 GURL(chrome::kChromeUINewTabURL),
883 CURRENT_TAB, 970 CURRENT_TAB,
884 ui_test_utils::BROWSER_TEST_NONE); 971 ui_test_utils::BROWSER_TEST_NONE);
885 new_tab_observer.Wait(); 972 new_tab_observer.Wait();
(...skipping 71 matching lines...) Expand 10 before | Expand all | Expand 10 after
957 // the search terms is sufficient. 1044 // the search terms is sufficient.
958 EXPECT_NE(ASCIIToUTF16("foo"), omnibox()->GetText()); 1045 EXPECT_NE(ASCIIToUTF16("foo"), omnibox()->GetText());
959 } 1046 }
960 1047
961 // Check that clicking on a result sends the correct referrer. 1048 // Check that clicking on a result sends the correct referrer.
962 IN_PROC_BROWSER_TEST_F(InstantExtendedTest, Referrer) { 1049 IN_PROC_BROWSER_TEST_F(InstantExtendedTest, Referrer) {
963 ASSERT_TRUE(test_server()->Start()); 1050 ASSERT_TRUE(test_server()->Start());
964 GURL result_url = 1051 GURL result_url =
965 test_server()->GetURL("files/referrer_policy/referrer-policy-log.html"); 1052 test_server()->GetURL("files/referrer_policy/referrer-policy-log.html");
966 ASSERT_NO_FATAL_FAILURE(SetupInstant(browser())); 1053 ASSERT_NO_FATAL_FAILURE(SetupInstant(browser()));
967 FocusOmnibox(); 1054 FocusOmniboxAndWaitForInstantNTPSupport();
968 1055
969 // Type a query and press enter to get results. 1056 // Type a query and press enter to get results.
970 SetOmniboxText("query"); 1057 SetOmniboxText("query");
971 PressEnterAndWaitForNavigation(); 1058 PressEnterAndWaitForNavigation();
972 1059
973 // Simulate going to a result. 1060 // Simulate going to a result.
974 content::WebContents* contents = 1061 content::WebContents* contents =
975 browser()->tab_strip_model()->GetActiveWebContents(); 1062 browser()->tab_strip_model()->GetActiveWebContents();
976 std::ostringstream stream; 1063 std::ostringstream stream;
977 stream << "var link = document.createElement('a');"; 1064 stream << "var link = document.createElement('a');";
978 stream << "link.href = \"" << result_url.spec() << "\";"; 1065 stream << "link.href = \"" << result_url.spec() << "\";";
979 stream << "document.body.appendChild(link);"; 1066 stream << "document.body.appendChild(link);";
980 stream << "link.click();"; 1067 stream << "link.click();";
981 EXPECT_TRUE(content::ExecuteScript(contents, stream.str())); 1068 EXPECT_TRUE(content::ExecuteScript(contents, stream.str()));
982 1069
983 content::WaitForLoadStop(contents); 1070 content::WaitForLoadStop(contents);
984 std::string expected_title = 1071 std::string expected_title =
985 "Referrer is " + instant_url().GetWithEmptyPath().spec(); 1072 "Referrer is " + instant_url().GetWithEmptyPath().spec();
986 EXPECT_EQ(ASCIIToUTF16(expected_title), contents->GetTitle()); 1073 EXPECT_EQ(ASCIIToUTF16(expected_title), contents->GetTitle());
987 } 1074 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698