| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 <memory> | 5 #include <memory> |
| 6 #include <string> | 6 #include <string> |
| 7 #include <vector> | 7 #include <vector> |
| 8 | 8 |
| 9 #include "base/command_line.h" | 9 #include "base/command_line.h" |
| 10 #include "base/feature_list.h" | 10 #include "base/feature_list.h" |
| (...skipping 126 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 137 // The test server has a base directory that doesn't exist in the | 137 // The test server has a base directory that doesn't exist in the |
| 138 // filesystem. | 138 // filesystem. |
| 139 test_page_url_(std::string("/") + kTestFileName) {} | 139 test_page_url_(std::string("/") + kTestFileName) {} |
| 140 | 140 |
| 141 void PlatformNotificationServiceBrowserTest::SetUpDefaultCommandLine( | 141 void PlatformNotificationServiceBrowserTest::SetUpDefaultCommandLine( |
| 142 base::CommandLine* command_line) { | 142 base::CommandLine* command_line) { |
| 143 InProcessBrowserTest::SetUpDefaultCommandLine(command_line); | 143 InProcessBrowserTest::SetUpDefaultCommandLine(command_line); |
| 144 | 144 |
| 145 // Needed for the Reply button tests | 145 // Needed for the Reply button tests |
| 146 command_line->AppendSwitch(switches::kEnableExperimentalWebPlatformFeatures); | 146 command_line->AppendSwitch(switches::kEnableExperimentalWebPlatformFeatures); |
| 147 | |
| 148 #if BUILDFLAG(ENABLE_NATIVE_NOTIFICATIONS) | |
| 149 // TODO(crbug.com/714679): Temporary change while tests are upgraded to deal | |
| 150 // with native notifications. | |
| 151 command_line->AppendSwitchASCII(switches::kDisableFeatures, | |
| 152 features::kNativeNotifications.name); | |
| 153 #endif // BUILDFLAG(ENABLE_NATIVE_NOTIFICATIONS) | |
| 154 } | 147 } |
| 155 | 148 |
| 156 void PlatformNotificationServiceBrowserTest::SetUp() { | 149 void PlatformNotificationServiceBrowserTest::SetUp() { |
| 157 ui_manager_.reset(new StubNotificationUIManager); | 150 ui_manager_.reset(new StubNotificationUIManager); |
| 158 https_server_.reset( | 151 https_server_.reset( |
| 159 new net::EmbeddedTestServer(net::EmbeddedTestServer::TYPE_HTTPS)); | 152 new net::EmbeddedTestServer(net::EmbeddedTestServer::TYPE_HTTPS)); |
| 160 https_server_->ServeFilesFromSourceDirectory(server_root_); | 153 https_server_->ServeFilesFromSourceDirectory(server_root_); |
| 161 ASSERT_TRUE(https_server_->Start()); | 154 ASSERT_TRUE(https_server_->Start()); |
| 155 #if BUILDFLAG(ENABLE_NATIVE_NOTIFICATIONS) |
| 156 // TODO(crbug.com/714679): Temporary change while tests are upgraded to deal |
| 157 // with native notifications. |
| 158 feature_list_.InitAndDisableFeature(features::kNativeNotifications); |
| 159 #endif // BUILDFLAG(ENABLE_NATIVE_NOTIFICATIONS) |
| 162 InProcessBrowserTest::SetUp(); | 160 InProcessBrowserTest::SetUp(); |
| 163 } | 161 } |
| 164 | 162 |
| 165 void PlatformNotificationServiceBrowserTest::SetUpOnMainThread() { | 163 void PlatformNotificationServiceBrowserTest::SetUpOnMainThread() { |
| 166 SiteEngagementScore::SetParamValuesForTesting(); | 164 SiteEngagementScore::SetParamValuesForTesting(); |
| 167 engagement_service_ = SiteEngagementService::Get(browser()->profile()); | 165 engagement_service_ = SiteEngagementService::Get(browser()->profile()); |
| 168 NavigateToTestPage(test_page_url_); | 166 NavigateToTestPage(test_page_url_); |
| 169 display_service_.reset( | 167 display_service_.reset( |
| 170 new MessageCenterDisplayService(browser()->profile(), ui_manager_.get())); | 168 new MessageCenterDisplayService(browser()->profile(), ui_manager_.get())); |
| 171 service()->SetNotificationDisplayServiceForTesting(display_service_.get()); | 169 service()->SetNotificationDisplayServiceForTesting(display_service_.get()); |
| (...skipping 649 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 821 | 819 |
| 822 ASSERT_EQ(1u, ui_manager()->GetNotificationCount()); | 820 ASSERT_EQ(1u, ui_manager()->GetNotificationCount()); |
| 823 const Notification& notification = ui_manager()->GetNotificationAt(0); | 821 const Notification& notification = ui_manager()->GetNotificationAt(0); |
| 824 EXPECT_FALSE(notification.delegate()->ShouldDisplayOverFullscreen()); | 822 EXPECT_FALSE(notification.delegate()->ShouldDisplayOverFullscreen()); |
| 825 } | 823 } |
| 826 #endif | 824 #endif |
| 827 | 825 |
| 828 class PlatformNotificationServiceWithoutContentImageBrowserTest | 826 class PlatformNotificationServiceWithoutContentImageBrowserTest |
| 829 : public PlatformNotificationServiceBrowserTest { | 827 : public PlatformNotificationServiceBrowserTest { |
| 830 public: | 828 public: |
| 831 // InProcessBrowserTest overrides. | 829 void SetUp() override { |
| 832 void SetUpInProcessBrowserTestFixture() override { | 830 scoped_feature_list_.InitAndDisableFeature( |
| 833 #if BUILDFLAG(ENABLE_NATIVE_NOTIFICATIONS) | 831 features::kNotificationContentImage); |
| 834 scoped_feature_list_.InitWithFeatures( | 832 PlatformNotificationServiceBrowserTest::SetUp(); |
| 835 {}, | |
| 836 {features::kNotificationContentImage, features::kNativeNotifications}); | |
| 837 #else | |
| 838 scoped_feature_list_.InitWithFeatures( | |
| 839 {}, {features::kNotificationContentImage}); | |
| 840 #endif // BUILDFLAG(ENABLE_NATIVE_NOTIFICATIONS) | |
| 841 InProcessBrowserTest::SetUpInProcessBrowserTestFixture(); | |
| 842 } | 833 } |
| 843 | 834 |
| 844 private: | 835 private: |
| 845 base::test::ScopedFeatureList scoped_feature_list_; | 836 base::test::ScopedFeatureList scoped_feature_list_; |
| 846 }; | 837 }; |
| 847 | 838 |
| 848 IN_PROC_BROWSER_TEST_F( | 839 IN_PROC_BROWSER_TEST_F( |
| 849 PlatformNotificationServiceWithoutContentImageBrowserTest, | 840 PlatformNotificationServiceWithoutContentImageBrowserTest, |
| 850 KillSwitch) { | 841 KillSwitch) { |
| 851 ASSERT_NO_FATAL_FAILURE(GrantNotificationPermissionForTest()); | 842 ASSERT_NO_FATAL_FAILURE(GrantNotificationPermissionForTest()); |
| 852 | 843 |
| 853 std::string script_result; | 844 std::string script_result; |
| 854 ASSERT_TRUE( | 845 ASSERT_TRUE( |
| 855 RunScript("DisplayPersistentAllOptionsNotification()", &script_result)); | 846 RunScript("DisplayPersistentAllOptionsNotification()", &script_result)); |
| 856 EXPECT_EQ("ok", script_result); | 847 EXPECT_EQ("ok", script_result); |
| 857 | 848 |
| 858 ASSERT_EQ(1u, ui_manager()->GetNotificationCount()); | 849 ASSERT_EQ(1u, ui_manager()->GetNotificationCount()); |
| 859 const Notification& notification = ui_manager()->GetNotificationAt(0); | 850 const Notification& notification = ui_manager()->GetNotificationAt(0); |
| 860 | 851 |
| 861 // Since the kNotificationContentImage kill switch has disabled images, the | 852 // Since the kNotificationContentImage kill switch has disabled images, the |
| 862 // notification should be shown without an image. | 853 // notification should be shown without an image. |
| 863 EXPECT_TRUE(notification.image().IsEmpty()); | 854 EXPECT_TRUE(notification.image().IsEmpty()); |
| 864 } | 855 } |
| OLD | NEW |