Index: chrome/browser/notifications/notification_permission_context_unittest.cc |
diff --git a/chrome/browser/notifications/notification_permission_context_unittest.cc b/chrome/browser/notifications/notification_permission_context_unittest.cc |
index d6239a6d97bc3f623b19ad05bffd09d2e6f7fbf2..1c878d943b4b4d093036d789e8cd698cfff8aa22 100644 |
--- a/chrome/browser/notifications/notification_permission_context_unittest.cc |
+++ b/chrome/browser/notifications/notification_permission_context_unittest.cc |
@@ -5,8 +5,9 @@ |
#include "chrome/browser/notifications/notification_permission_context.h" |
#include "base/bind.h" |
-#include "base/memory/ptr_util.h" |
-#include "base/test/scoped_mock_time_message_loop_task_runner.h" |
+#include "base/message_loop/message_loop.h" |
+#include "base/test/test_mock_time_task_runner.h" |
+#include "base/threading/thread_task_runner_handle.h" |
#include "base/time/time.h" |
#include "chrome/browser/content_settings/host_content_settings_map_factory.h" |
#include "chrome/browser/notifications/desktop_notification_profile_util.h" |
@@ -80,19 +81,24 @@ |
class NotificationPermissionContextTest |
: public ChromeRenderViewHostTestHarness { |
public: |
+ scoped_refptr<base::TestMockTimeTaskRunner> SwitchToMockTime() { |
+ old_task_runner_ = base::ThreadTaskRunnerHandle::Get(); |
+ scoped_refptr<base::TestMockTimeTaskRunner> task_runner( |
+ new base::TestMockTimeTaskRunner(base::Time::Now(), |
+ base::TimeTicks::Now())); |
+ base::MessageLoop::current()->SetTaskRunner(task_runner); |
+ return task_runner; |
+ } |
+ |
void TearDown() override { |
- mock_time_task_runner_.reset(); |
+ if (old_task_runner_) { |
+ base::MessageLoop::current()->SetTaskRunner(old_task_runner_); |
+ old_task_runner_ = nullptr; |
+ } |
ChromeRenderViewHostTestHarness::TearDown(); |
} |
protected: |
- base::TestMockTimeTaskRunner* SwitchToMockTime() { |
- EXPECT_FALSE(mock_time_task_runner_); |
- mock_time_task_runner_ = |
- base::MakeUnique<base::ScopedMockTimeMessageLoopTaskRunner>(); |
- return mock_time_task_runner_->task_runner(); |
- } |
- |
void UpdateContentSetting(NotificationPermissionContext* context, |
const GURL& requesting_origin, |
const GURL& embedding_origin, |
@@ -101,8 +107,7 @@ |
} |
private: |
- std::unique_ptr<base::ScopedMockTimeMessageLoopTaskRunner> |
- mock_time_task_runner_; |
+ scoped_refptr<base::SingleThreadTaskRunner> old_task_runner_; |
}; |
// Web Notification permission requests will completely ignore the embedder |
@@ -210,7 +215,7 @@ |
web_contents()->GetMainFrame()->GetRoutingID(), |
-1); |
- base::TestMockTimeTaskRunner* task_runner = SwitchToMockTime(); |
+ scoped_refptr<base::TestMockTimeTaskRunner> task_runner(SwitchToMockTime()); |
ASSERT_EQ(0, permission_context.permission_set_count()); |
ASSERT_FALSE(permission_context.last_permission_set_persisted()); |
@@ -276,7 +281,7 @@ |
web_contents()->GetMainFrame()->GetRoutingID(), |
-1); |
- base::TestMockTimeTaskRunner* task_runner = SwitchToMockTime(); |
+ scoped_refptr<base::TestMockTimeTaskRunner> task_runner(SwitchToMockTime()); |
content::PermissionManager* permission_manager = |
PermissionManagerFactory::GetForProfile( |
@@ -313,7 +318,7 @@ |
web_contents()->GetMainFrame()->GetRoutingID(), |
1); |
- base::TestMockTimeTaskRunner* task_runner = SwitchToMockTime(); |
+ scoped_refptr<base::TestMockTimeTaskRunner> task_runner(SwitchToMockTime()); |
ASSERT_EQ(0, permission_context.permission_set_count()); |
ASSERT_FALSE(permission_context.last_permission_set_persisted()); |