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

Side by Side Diff: chrome/browser/instant/instant_browsertest.cc

Issue 11824050: InstantExtended: Committed NTP (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Address comments. Created 7 years, 10 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 2012 The Chromium Authors. All rights reserved. 1 // Copyright 2012 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/browser/content_settings/host_content_settings_map.h" 5 #include "chrome/browser/content_settings/host_content_settings_map.h"
6 #include "chrome/browser/history/history_service_factory.h" 6 #include "chrome/browser/history/history_service_factory.h"
7 #include "chrome/browser/instant/instant_loader.h" 7 #include "chrome/browser/instant/instant_overlay.h"
8 #include "chrome/browser/instant/instant_service.h" 8 #include "chrome/browser/instant/instant_service.h"
9 #include "chrome/browser/instant/instant_service_factory.h" 9 #include "chrome/browser/instant/instant_service_factory.h"
10 #include "chrome/browser/instant/instant_test_utils.h" 10 #include "chrome/browser/instant/instant_test_utils.h"
11 #include "chrome/browser/profiles/profile.h" 11 #include "chrome/browser/profiles/profile.h"
12 #include "chrome/browser/search_engines/template_url_service.h" 12 #include "chrome/browser/search_engines/template_url_service.h"
13 #include "chrome/browser/search_engines/template_url_service_factory.h" 13 #include "chrome/browser/search_engines/template_url_service_factory.h"
14 #include "chrome/browser/task_manager/task_manager.h" 14 #include "chrome/browser/task_manager/task_manager.h"
15 #include "chrome/browser/task_manager/task_manager_browsertest_util.h" 15 #include "chrome/browser/task_manager/task_manager_browsertest_util.h"
16 #include "chrome/browser/ui/browser_commands.h" 16 #include "chrome/browser/ui/browser_commands.h"
17 #include "chrome/browser/ui/browser_tabstrip.h" 17 #include "chrome/browser/ui/browser_tabstrip.h"
18 #include "chrome/browser/ui/tabs/tab_strip_model.h" 18 #include "chrome/browser/ui/tabs/tab_strip_model.h"
19 #include "chrome/common/chrome_notification_types.h"
19 #include "chrome/common/url_constants.h" 20 #include "chrome/common/url_constants.h"
20 #include "chrome/test/base/interactive_test_utils.h" 21 #include "chrome/test/base/interactive_test_utils.h"
21 #include "chrome/test/base/ui_test_utils.h" 22 #include "chrome/test/base/ui_test_utils.h"
23 #include "content/public/browser/notification_service.h"
22 #include "content/public/browser/render_process_host.h" 24 #include "content/public/browser/render_process_host.h"
23 #include "content/public/browser/web_contents.h" 25 #include "content/public/browser/web_contents.h"
24 #include "grit/generated_resources.h" 26 #include "grit/generated_resources.h"
25 #include "ui/base/l10n/l10n_util.h" 27 #include "ui/base/l10n/l10n_util.h"
26 28
27 class InstantTest : public InstantTestBase { 29 class InstantTest : public InstantTestBase {
28 protected: 30 protected:
29 virtual void SetUpInProcessBrowserTestFixture() OVERRIDE { 31 virtual void SetUpInProcessBrowserTestFixture() OVERRIDE {
30 ASSERT_TRUE(test_server()->Start()); 32 ASSERT_TRUE(test_server()->Start());
31 instant_url_ = test_server()->GetURL("files/instant.html"); 33 instant_url_ = test_server()->GetURL("files/instant.html");
32 } 34 }
33 35
36 void FocusOmniboxAndWaitForInstantSupport() {
37 content::WindowedNotificationObserver observer(
38 chrome::NOTIFICATION_INSTANT_OVERLAY_SUPPORT_DETERMINED,
39 content::NotificationService::AllSources());
40 FocusOmnibox();
41 observer.Wait();
42 }
43
34 bool UpdateSearchState(content::WebContents* contents) WARN_UNUSED_RESULT { 44 bool UpdateSearchState(content::WebContents* contents) WARN_UNUSED_RESULT {
35 return GetIntFromJS(contents, "onvisibilitycalls", &onvisibilitycalls_) && 45 return GetIntFromJS(contents, "onvisibilitycalls", &onvisibilitycalls_) &&
36 GetIntFromJS(contents, "onchangecalls", &onchangecalls_) && 46 GetIntFromJS(contents, "onchangecalls", &onchangecalls_) &&
37 GetIntFromJS(contents, "onsubmitcalls", &onsubmitcalls_) && 47 GetIntFromJS(contents, "onsubmitcalls", &onsubmitcalls_) &&
38 GetIntFromJS(contents, "oncancelcalls", &oncancelcalls_) && 48 GetIntFromJS(contents, "oncancelcalls", &oncancelcalls_) &&
39 GetIntFromJS(contents, "onresizecalls", &onresizecalls_) && 49 GetIntFromJS(contents, "onresizecalls", &onresizecalls_) &&
40 GetStringFromJS(contents, "value", &value_) && 50 GetStringFromJS(contents, "value", &value_) &&
41 GetBoolFromJS(contents, "verbatim", &verbatim_) && 51 GetBoolFromJS(contents, "verbatim", &verbatim_) &&
42 GetIntFromJS(contents, "height", &height_); 52 GetIntFromJS(contents, "height", &height_);
43 } 53 }
(...skipping 14 matching lines...) Expand all
58 ASSERT_NO_FATAL_FAILURE(SetupInstant()); 68 ASSERT_NO_FATAL_FAILURE(SetupInstant());
59 69
60 // Explicitly unfocus the omnibox. 70 // Explicitly unfocus the omnibox.
61 EXPECT_TRUE(ui_test_utils::BringBrowserWindowToFront(browser())); 71 EXPECT_TRUE(ui_test_utils::BringBrowserWindowToFront(browser()));
62 ui_test_utils::ClickOnView(browser(), VIEW_ID_TAB_CONTAINER); 72 ui_test_utils::ClickOnView(browser(), VIEW_ID_TAB_CONTAINER);
63 73
64 EXPECT_TRUE(ui_test_utils::IsViewFocused(browser(), VIEW_ID_TAB_CONTAINER)); 74 EXPECT_TRUE(ui_test_utils::IsViewFocused(browser(), VIEW_ID_TAB_CONTAINER));
65 EXPECT_FALSE(omnibox()->model()->has_focus()); 75 EXPECT_FALSE(omnibox()->model()->has_focus());
66 76
67 // Delete any existing preview. 77 // Delete any existing preview.
68 instant()->loader_.reset(); 78 instant()->overlay_.reset();
69 EXPECT_FALSE(instant()->GetPreviewContents()); 79 EXPECT_FALSE(instant()->GetPreviewContents());
70 80
71 // Refocus the omnibox. The InstantController should've preloaded Instant. 81 // Refocus the omnibox. The InstantController should've preloaded Instant.
72 FocusOmniboxAndWaitForInstantSupport(); 82 FocusOmniboxAndWaitForInstantSupport();
73 83
74 EXPECT_FALSE(ui_test_utils::IsViewFocused(browser(), VIEW_ID_TAB_CONTAINER)); 84 EXPECT_FALSE(ui_test_utils::IsViewFocused(browser(), VIEW_ID_TAB_CONTAINER));
75 EXPECT_TRUE(omnibox()->model()->has_focus()); 85 EXPECT_TRUE(omnibox()->model()->has_focus());
76 86
77 content::WebContents* preview_tab = instant()->GetPreviewContents(); 87 content::WebContents* preview_tab = instant()->GetPreviewContents();
78 EXPECT_TRUE(preview_tab); 88 EXPECT_TRUE(preview_tab);
79 89
80 // Check that the page supports Instant, but it isn't showing. 90 // Check that the page supports Instant, but it isn't showing.
81 EXPECT_TRUE(instant()->loader_->supports_instant()); 91 EXPECT_TRUE(instant()->overlay_->supports_instant());
82 EXPECT_FALSE(instant()->IsPreviewingSearchResults()); 92 EXPECT_FALSE(instant()->IsPreviewingSearchResults());
83 EXPECT_TRUE(instant()->model()->mode().is_default()); 93 EXPECT_TRUE(instant()->model()->mode().is_default());
84 94
85 // Adding a new tab shouldn't delete or recreate the preview; otherwise, 95 // Adding a new tab shouldn't delete or recreate the preview; otherwise,
86 // what's the point of preloading? 96 // what's the point of preloading?
87 AddBlankTabAndShow(browser()); 97 AddBlankTabAndShow(browser());
88 EXPECT_EQ(preview_tab, instant()->GetPreviewContents()); 98 EXPECT_EQ(preview_tab, instant()->GetPreviewContents());
89 99
90 // Unfocusing and refocusing the omnibox should also preserve the preview. 100 // Unfocusing and refocusing the omnibox should also preserve the preview.
91 ui_test_utils::ClickOnView(browser(), VIEW_ID_TAB_CONTAINER); 101 ui_test_utils::ClickOnView(browser(), VIEW_ID_TAB_CONTAINER);
(...skipping 16 matching lines...) Expand all
108 ASSERT_NO_FATAL_FAILURE(SetupInstantUsingTemplateURL()); 118 ASSERT_NO_FATAL_FAILURE(SetupInstantUsingTemplateURL());
109 119
110 // Explicitly unfocus the omnibox. 120 // Explicitly unfocus the omnibox.
111 EXPECT_TRUE(ui_test_utils::BringBrowserWindowToFront(browser())); 121 EXPECT_TRUE(ui_test_utils::BringBrowserWindowToFront(browser()));
112 ui_test_utils::ClickOnView(browser(), VIEW_ID_TAB_CONTAINER); 122 ui_test_utils::ClickOnView(browser(), VIEW_ID_TAB_CONTAINER);
113 123
114 EXPECT_TRUE(ui_test_utils::IsViewFocused(browser(), VIEW_ID_TAB_CONTAINER)); 124 EXPECT_TRUE(ui_test_utils::IsViewFocused(browser(), VIEW_ID_TAB_CONTAINER));
115 EXPECT_FALSE(omnibox()->model()->has_focus()); 125 EXPECT_FALSE(omnibox()->model()->has_focus());
116 126
117 // Delete any existing preview. 127 // Delete any existing preview.
118 instant()->loader_.reset(); 128 instant()->overlay_.reset();
119 EXPECT_FALSE(instant()->GetPreviewContents()); 129 EXPECT_FALSE(instant()->GetPreviewContents());
120 130
121 // Refocus the omnibox. The InstantController should've preloaded Instant. 131 // Refocus the omnibox. The InstantController should've preloaded Instant.
122 FocusOmniboxAndWaitForInstantSupport(); 132 FocusOmniboxAndWaitForInstantSupport();
123 133
124 EXPECT_FALSE(ui_test_utils::IsViewFocused(browser(), VIEW_ID_TAB_CONTAINER)); 134 EXPECT_FALSE(ui_test_utils::IsViewFocused(browser(), VIEW_ID_TAB_CONTAINER));
125 EXPECT_TRUE(omnibox()->model()->has_focus()); 135 EXPECT_TRUE(omnibox()->model()->has_focus());
126 136
127 content::WebContents* preview_tab = instant()->GetPreviewContents(); 137 content::WebContents* preview_tab = instant()->GetPreviewContents();
128 EXPECT_TRUE(preview_tab); 138 EXPECT_TRUE(preview_tab);
129 139
130 // Check that the page supports Instant, but it isn't showing. 140 // Check that the page supports Instant, but it isn't showing.
131 EXPECT_TRUE(instant()->loader_->supports_instant()); 141 EXPECT_TRUE(instant()->overlay_->supports_instant());
132 EXPECT_FALSE(instant()->IsPreviewingSearchResults()); 142 EXPECT_FALSE(instant()->IsPreviewingSearchResults());
133 EXPECT_TRUE(instant()->model()->mode().is_default()); 143 EXPECT_TRUE(instant()->model()->mode().is_default());
134 } 144 }
135 145
136 // Flakes on Windows and Mac: http://crbug.com/170677 146 // Flakes on Windows and Mac: http://crbug.com/170677
137 #if defined(OS_WIN) || defined(OS_MACOSX) 147 #if defined(OS_WIN) || defined(OS_MACOSX)
138 #define MAYBE_OnChangeEvent DISABLED_OnChangeEvent 148 #define MAYBE_OnChangeEvent DISABLED_OnChangeEvent
139 #else 149 #else
140 #define MAYBE_OnChangeEvent OnChangeEvent 150 #define MAYBE_OnChangeEvent OnChangeEvent
141 #endif 151 #endif
(...skipping 63 matching lines...) Expand 10 before | Expand all | Expand 10 after
205 EXPECT_EQ(std::string(chrome::kAboutBlankURL), 215 EXPECT_EQ(std::string(chrome::kAboutBlankURL),
206 omnibox()->model()->PermanentURL().spec()); 216 omnibox()->model()->PermanentURL().spec());
207 217
208 // Commit the search by pressing Enter. 218 // Commit the search by pressing Enter.
209 browser()->window()->GetLocationBar()->AcceptInput(); 219 browser()->window()->GetLocationBar()->AcceptInput();
210 220
211 // After the commit, Instant should not be showing. 221 // After the commit, Instant should not be showing.
212 EXPECT_FALSE(instant()->IsPreviewingSearchResults()); 222 EXPECT_FALSE(instant()->IsPreviewingSearchResults());
213 EXPECT_TRUE(instant()->model()->mode().is_default()); 223 EXPECT_TRUE(instant()->model()->mode().is_default());
214 224
215 // The old loader is deleted and a new one is created. 225 // The old overlay is deleted and a new one is created.
216 EXPECT_TRUE(instant()->GetPreviewContents()); 226 EXPECT_TRUE(instant()->GetPreviewContents());
217 EXPECT_NE(instant()->GetPreviewContents(), preview_tab); 227 EXPECT_NE(instant()->GetPreviewContents(), preview_tab);
218 228
219 // Check that the current active tab is indeed what was once the preview. 229 // Check that the current active tab is indeed what was once the preview.
220 EXPECT_EQ(preview_tab, browser()->tab_strip_model()->GetActiveWebContents()); 230 EXPECT_EQ(preview_tab, browser()->tab_strip_model()->GetActiveWebContents());
221 231
222 // We should have two navigation entries, one for the NTP, and one for the 232 // We should have two navigation entries, one for the NTP, and one for the
223 // Instant search that was committed. 233 // Instant search that was committed.
224 EXPECT_EQ(2, preview_tab->GetController().GetEntryCount()); 234 EXPECT_EQ(2, preview_tab->GetController().GetEntryCount());
225 235
(...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after
265 EXPECT_EQ(std::string(chrome::kAboutBlankURL), 275 EXPECT_EQ(std::string(chrome::kAboutBlankURL),
266 omnibox()->model()->PermanentURL().spec()); 276 omnibox()->model()->PermanentURL().spec());
267 277
268 // Commit the search by clicking on the preview. 278 // Commit the search by clicking on the preview.
269 ui_test_utils::ClickOnView(browser(), VIEW_ID_TAB_CONTAINER); 279 ui_test_utils::ClickOnView(browser(), VIEW_ID_TAB_CONTAINER);
270 280
271 // After the commit, Instant should not be showing. 281 // After the commit, Instant should not be showing.
272 EXPECT_FALSE(instant()->IsPreviewingSearchResults()); 282 EXPECT_FALSE(instant()->IsPreviewingSearchResults());
273 EXPECT_TRUE(instant()->model()->mode().is_default()); 283 EXPECT_TRUE(instant()->model()->mode().is_default());
274 284
275 // The old loader is deleted and a new one is created. 285 // The old overlay is deleted and a new one is created.
276 EXPECT_TRUE(instant()->GetPreviewContents()); 286 EXPECT_TRUE(instant()->GetPreviewContents());
277 EXPECT_NE(instant()->GetPreviewContents(), preview_tab); 287 EXPECT_NE(instant()->GetPreviewContents(), preview_tab);
278 288
279 // Check that the current active tab is indeed what was once the preview. 289 // Check that the current active tab is indeed what was once the preview.
280 EXPECT_EQ(preview_tab, browser()->tab_strip_model()->GetActiveWebContents()); 290 EXPECT_EQ(preview_tab, browser()->tab_strip_model()->GetActiveWebContents());
281 291
282 // We should have two navigation entries, one for the NTP, and one for the 292 // We should have two navigation entries, one for the NTP, and one for the
283 // Instant search that was committed. 293 // Instant search that was committed.
284 EXPECT_EQ(2, preview_tab->GetController().GetEntryCount()); 294 EXPECT_EQ(2, preview_tab->GetController().GetEntryCount());
285 295
(...skipping 483 matching lines...) Expand 10 before | Expand all | Expand 10 after
769 chrome::NewEmptyWindow(browser()->profile()); 779 chrome::NewEmptyWindow(browser()->profile());
770 observer.WaitUntilDesiredPreviewState(); 780 observer.WaitUntilDesiredPreviewState();
771 781
772 // Even though we just created a new Browser object (for the new window), the 782 // Even though we just created a new Browser object (for the new window), the
773 // browser() accessor should still give us the first window's Browser object. 783 // browser() accessor should still give us the first window's Browser object.
774 EXPECT_EQ(previous_window, browser()); 784 EXPECT_EQ(previous_window, browser());
775 EXPECT_FALSE(instant()->IsPreviewingSearchResults()); 785 EXPECT_FALSE(instant()->IsPreviewingSearchResults());
776 EXPECT_TRUE(instant()->model()->mode().is_default()); 786 EXPECT_TRUE(instant()->model()->mode().is_default());
777 } 787 }
778 788
779 // Test that the Instant loader is recreated when all these conditions are met: 789 // Test that the Instant overlay is recreated when all these conditions are met:
780 // - The stale loader timer has fired. 790 // - The stale overlay timer has fired.
781 // - The preview is not showing. 791 // - The preview is not showing.
782 // - The omnibox doesn't have focus. 792 // - The omnibox doesn't have focus.
783 IN_PROC_BROWSER_TEST_F(InstantTest, InstantLoaderRefresh) { 793 IN_PROC_BROWSER_TEST_F(InstantTest, InstantOverlayRefresh) {
784 ASSERT_NO_FATAL_FAILURE(SetupInstant()); 794 ASSERT_NO_FATAL_FAILURE(SetupInstant());
785 FocusOmniboxAndWaitForInstantSupport(); 795 FocusOmniboxAndWaitForInstantSupport();
786 796
787 // The preview is refreshed only after all three conditions above are met. 797 // The preview is refreshed only after all three conditions above are met.
788 SetOmniboxTextAndWaitForInstantToShow("query"); 798 SetOmniboxTextAndWaitForInstantToShow("query");
789 instant()->stale_loader_timer_.Stop(); 799 instant()->overlay_->is_stale_ = true;
790 instant()->OnStaleLoader(); 800 instant()->ReloadOverlayIfStale();
791 EXPECT_TRUE(instant()->loader_->supports_instant()); 801 EXPECT_TRUE(instant()->overlay_->supports_instant());
792 instant()->HideLoader(); 802 instant()->HideOverlay();
793 EXPECT_TRUE(instant()->loader_->supports_instant()); 803 EXPECT_TRUE(instant()->overlay_->supports_instant());
794 instant()->OmniboxFocusChanged(OMNIBOX_FOCUS_NONE, 804 instant()->OmniboxFocusChanged(OMNIBOX_FOCUS_NONE,
795 OMNIBOX_FOCUS_CHANGE_EXPLICIT, NULL); 805 OMNIBOX_FOCUS_CHANGE_EXPLICIT, NULL);
796 EXPECT_FALSE(instant()->loader_->supports_instant()); 806 EXPECT_FALSE(instant()->overlay_->supports_instant());
797 807
798 // Try with a different ordering. 808 // Try with a different ordering.
799 SetOmniboxTextAndWaitForInstantToShow("query"); 809 SetOmniboxTextAndWaitForInstantToShow("query");
800 instant()->stale_loader_timer_.Stop(); 810 instant()->overlay_->is_stale_ = true;
801 instant()->OnStaleLoader(); 811 instant()->ReloadOverlayIfStale();
802 EXPECT_TRUE(instant()->loader_->supports_instant()); 812 EXPECT_TRUE(instant()->overlay_->supports_instant());
803 instant()->OmniboxFocusChanged(OMNIBOX_FOCUS_NONE, 813 instant()->OmniboxFocusChanged(OMNIBOX_FOCUS_NONE,
804 OMNIBOX_FOCUS_CHANGE_EXPLICIT, NULL); 814 OMNIBOX_FOCUS_CHANGE_EXPLICIT, NULL);
805 // TODO(sreeram): Currently, OmniboxLostFocus() calls HideLoader(). When it 815 // TODO(sreeram): Currently, OmniboxLostFocus() calls HideOverlay(). When it
806 // stops hiding the preview eventually, uncomment these two lines: 816 // stops hiding the preview eventually, uncomment these two lines:
807 // EXPECT_TRUE(instant()->loader_->supports_instant()); 817 // EXPECT_TRUE(instant()->overlay_->supports_instant());
808 // instant()->HideLoader(); 818 // instant()->HideOverlay();
809 EXPECT_FALSE(instant()->loader_->supports_instant()); 819 EXPECT_FALSE(instant()->overlay_->supports_instant());
810 } 820 }
811 821
812 // Test that suggestions are case insensitive. http://crbug.com/150728 822 // Test that suggestions are case insensitive. http://crbug.com/150728
813 IN_PROC_BROWSER_TEST_F(InstantTest, SuggestionsAreCaseInsensitive) { 823 IN_PROC_BROWSER_TEST_F(InstantTest, SuggestionsAreCaseInsensitive) {
814 ASSERT_NO_FATAL_FAILURE(SetupInstant()); 824 ASSERT_NO_FATAL_FAILURE(SetupInstant());
815 FocusOmniboxAndWaitForInstantSupport(); 825 FocusOmniboxAndWaitForInstantSupport();
816 826
817 EXPECT_TRUE(ExecuteScript("suggestion = [ { value: 'INSTANT' } ]")); 827 EXPECT_TRUE(ExecuteScript("suggestion = [ { value: 'INSTANT' } ]"));
818 828
819 SetOmniboxTextAndWaitForInstantToShow("in"); 829 SetOmniboxTextAndWaitForInstantToShow("in");
(...skipping 89 matching lines...) Expand 10 before | Expand all | Expand 10 after
909 &active_tab_onvisibilitycalls)); 919 &active_tab_onvisibilitycalls));
910 EXPECT_EQ(0, active_tab_onvisibilitycalls); 920 EXPECT_EQ(0, active_tab_onvisibilitycalls);
911 921
912 // Commit the search by pressing Alt-Enter. 922 // Commit the search by pressing Alt-Enter.
913 omnibox()->model()->AcceptInput(NEW_FOREGROUND_TAB, false); 923 omnibox()->model()->AcceptInput(NEW_FOREGROUND_TAB, false);
914 924
915 // After the commit, Instant should not be showing. 925 // After the commit, Instant should not be showing.
916 EXPECT_FALSE(instant()->IsPreviewingSearchResults()); 926 EXPECT_FALSE(instant()->IsPreviewingSearchResults());
917 EXPECT_TRUE(instant()->model()->mode().is_default()); 927 EXPECT_TRUE(instant()->model()->mode().is_default());
918 928
919 // The old loader is deleted and a new one is created. 929 // The old overlay is deleted and a new one is created.
920 EXPECT_TRUE(instant()->GetPreviewContents()); 930 EXPECT_TRUE(instant()->GetPreviewContents());
921 EXPECT_NE(instant()->GetPreviewContents(), preview_tab); 931 EXPECT_NE(instant()->GetPreviewContents(), preview_tab);
922 932
923 // Check that we have two tabs and that the new active tab is indeed what was 933 // Check that we have two tabs and that the new active tab is indeed what was
924 // once the preview. The preview tab should have just one navigation entry, 934 // once the preview. The preview tab should have just one navigation entry,
925 // for the Instant search that was committed. 935 // for the Instant search that was committed.
926 EXPECT_EQ(2, browser()->tab_strip_model()->count()); 936 EXPECT_EQ(2, browser()->tab_strip_model()->count());
927 EXPECT_EQ(preview_tab, browser()->tab_strip_model()->GetActiveWebContents()); 937 EXPECT_EQ(preview_tab, browser()->tab_strip_model()->GetActiveWebContents());
928 EXPECT_EQ(1, preview_tab->GetController().GetEntryCount()); 938 EXPECT_EQ(1, preview_tab->GetController().GetEntryCount());
929 939
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after
963 SetOmniboxText("ins"); 973 SetOmniboxText("ins");
964 EXPECT_EQ(ASCIIToUTF16("tant"), omnibox()->GetInstantSuggestion()); 974 EXPECT_EQ(ASCIIToUTF16("tant"), omnibox()->GetInstantSuggestion());
965 975
966 SetOmniboxText("in"); 976 SetOmniboxText("in");
967 EXPECT_EQ(ASCIIToUTF16("stant"), omnibox()->GetInstantSuggestion()); 977 EXPECT_EQ(ASCIIToUTF16("stant"), omnibox()->GetInstantSuggestion());
968 978
969 SetOmniboxText("insane"); 979 SetOmniboxText("insane");
970 EXPECT_EQ(ASCIIToUTF16(""), omnibox()->GetInstantSuggestion()); 980 EXPECT_EQ(ASCIIToUTF16(""), omnibox()->GetInstantSuggestion());
971 } 981 }
972 982
973 // Test that instant loader is recreated if it gets destroyed. 983 // Test that instant overlay is recreated if it gets destroyed.
974 IN_PROC_BROWSER_TEST_F(InstantTest, InstantRenderViewGone) { 984 IN_PROC_BROWSER_TEST_F(InstantTest, InstantRenderViewGone) {
975 ASSERT_NO_FATAL_FAILURE(SetupInstant()); 985 ASSERT_NO_FATAL_FAILURE(SetupInstant());
976 FocusOmniboxAndWaitForInstantSupport(); 986 FocusOmniboxAndWaitForInstantSupport();
977 987
978 // Type partial query, get suggestion to show. 988 // Type partial query, get suggestion to show.
979 SetOmniboxTextAndWaitForInstantToShow("q"); 989 SetOmniboxTextAndWaitForInstantToShow("q");
980 EXPECT_EQ(ASCIIToUTF16("query suggestion"), omnibox()->GetText()); 990 EXPECT_EQ(ASCIIToUTF16("query suggestion"), omnibox()->GetText());
981 991
982 // Kill the instant renderer and wait for instant support again. 992 // Kill the instant renderer and wait for instant support again.
983 KillInstantRenderView(); 993 KillInstantRenderView();
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after
1015 content::WebContents* active_tab = 1025 content::WebContents* active_tab =
1016 browser()->tab_strip_model()->GetActiveWebContents(); 1026 browser()->tab_strip_model()->GetActiveWebContents();
1017 EXPECT_TRUE(instant_service->IsInstantProcess( 1027 EXPECT_TRUE(instant_service->IsInstantProcess(
1018 active_tab->GetRenderProcessHost()->GetID())); 1028 active_tab->GetRenderProcessHost()->GetID()));
1019 1029
1020 // Navigating away should change the process. 1030 // Navigating away should change the process.
1021 ui_test_utils::NavigateToURL(browser(), GURL(chrome::kChromeUINewTabURL)); 1031 ui_test_utils::NavigateToURL(browser(), GURL(chrome::kChromeUINewTabURL));
1022 EXPECT_FALSE(instant_service->IsInstantProcess( 1032 EXPECT_FALSE(instant_service->IsInstantProcess(
1023 active_tab->GetRenderProcessHost()->GetID())); 1033 active_tab->GetRenderProcessHost()->GetID()));
1024 } 1034 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698