Index: chrome/browser/favicon/content_favicon_driver_browsertest.cc |
diff --git a/chrome/browser/favicon/content_favicon_driver_browsertest.cc b/chrome/browser/favicon/content_favicon_driver_browsertest.cc |
index d1d15fd425dfd44a0a9c1add91ad39e8ff94a197..4e94e929d009fd1f1ba1b09f6c6e18d04c495c07 100644 |
--- a/chrome/browser/favicon/content_favicon_driver_browsertest.cc |
+++ b/chrome/browser/favicon/content_favicon_driver_browsertest.cc |
@@ -10,6 +10,7 @@ |
#include "base/run_loop.h" |
#include "base/scoped_observer.h" |
#include "base/single_thread_task_runner.h" |
+#include "base/test/scoped_feature_list.h" |
#include "base/threading/thread_task_runner_handle.h" |
#include "chrome/app/chrome_command_ids.h" |
#include "chrome/browser/chrome_notification_types.h" |
@@ -239,3 +240,26 @@ IN_PROC_BROWSER_TEST_F(ContentFaviconDriverTest, ReloadBypassingCache) { |
ASSERT_TRUE(delegate->was_requested()); |
EXPECT_TRUE(delegate->bypassed_cache()); |
} |
+ |
+// Test that loading a page that contains icons only in the Web Manifest causes |
+// those icons to be used.. |
pkotwicz
2017/05/12 06:13:28
Nit: Just one period
|
+IN_PROC_BROWSER_TEST_F(ContentFaviconDriverTest, LoadIconFromWebManifest) { |
+ base::test::ScopedFeatureList override_features; |
+ override_features.InitAndEnableFeature(favicon::kFaviconsFromWebManifest); |
+ |
+ ASSERT_TRUE(embedded_test_server()->Start()); |
+ GURL url = embedded_test_server()->GetURL("/favicon/page_with_manifest.html"); |
+ GURL icon_url = embedded_test_server()->GetURL("/favicon/icon.png"); |
+ |
+ std::unique_ptr<TestResourceDispatcherHostDelegate> delegate( |
+ new TestResourceDispatcherHostDelegate(icon_url)); |
+ content::ResourceDispatcherHost::Get()->SetDelegate(delegate.get()); |
+ |
+ PendingTaskWaiter waiter(web_contents(), this); |
+ ui_test_utils::NavigateToURLWithDisposition( |
+ browser(), url, WindowOpenDisposition::CURRENT_TAB, |
+ ui_test_utils::BROWSER_TEST_NONE); |
+ waiter.Wait(); |
+ |
+ EXPECT_TRUE(delegate->was_requested()); |
+} |