OLD | NEW |
1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 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 "components/scheduler/renderer/web_view_scheduler_impl.h" | 5 #include "components/scheduler/renderer/web_view_scheduler_impl.h" |
6 | 6 |
7 #include "base/callback.h" | 7 #include "base/callback.h" |
8 #include "base/memory/scoped_ptr.h" | 8 #include "base/memory/scoped_ptr.h" |
9 #include "base/test/simple_test_tick_clock.h" | 9 #include "base/test/simple_test_tick_clock.h" |
10 #include "cc/test/ordered_simple_task_runner.h" | 10 #include "cc/test/ordered_simple_task_runner.h" |
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
51 | 51 |
52 scoped_ptr<base::SimpleTestTickClock> clock_; | 52 scoped_ptr<base::SimpleTestTickClock> clock_; |
53 scoped_refptr<cc::OrderedSimpleTaskRunner> mock_task_runner_; | 53 scoped_refptr<cc::OrderedSimpleTaskRunner> mock_task_runner_; |
54 scoped_refptr<SchedulerTqmDelegate> delagate_; | 54 scoped_refptr<SchedulerTqmDelegate> delagate_; |
55 scoped_ptr<RendererSchedulerImpl> scheduler_; | 55 scoped_ptr<RendererSchedulerImpl> scheduler_; |
56 scoped_ptr<WebViewSchedulerImpl> web_view_scheduler_; | 56 scoped_ptr<WebViewSchedulerImpl> web_view_scheduler_; |
57 scoped_ptr<WebFrameSchedulerImpl> web_frame_scheduler_; | 57 scoped_ptr<WebFrameSchedulerImpl> web_frame_scheduler_; |
58 }; | 58 }; |
59 | 59 |
60 TEST_F(WebViewSchedulerImplTest, TestDestructionOfFrameSchedulersBefore) { | 60 TEST_F(WebViewSchedulerImplTest, TestDestructionOfFrameSchedulersBefore) { |
61 blink::WebPassOwnPtr<blink::WebFrameScheduler> frame1( | 61 std::unique_ptr<blink::WebFrameScheduler> frame1( |
62 web_view_scheduler_->createFrameScheduler(nullptr)); | 62 web_view_scheduler_->createFrameScheduler(nullptr)); |
63 blink::WebPassOwnPtr<blink::WebFrameScheduler> frame2( | 63 std::unique_ptr<blink::WebFrameScheduler> frame2( |
64 web_view_scheduler_->createFrameScheduler(nullptr)); | 64 web_view_scheduler_->createFrameScheduler(nullptr)); |
65 } | 65 } |
66 | 66 |
67 TEST_F(WebViewSchedulerImplTest, TestDestructionOfFrameSchedulersAfter) { | 67 TEST_F(WebViewSchedulerImplTest, TestDestructionOfFrameSchedulersAfter) { |
68 blink::WebPassOwnPtr<blink::WebFrameScheduler> frame1( | 68 std::unique_ptr<blink::WebFrameScheduler> frame1( |
69 web_view_scheduler_->createFrameScheduler(nullptr)); | 69 web_view_scheduler_->createFrameScheduler(nullptr)); |
70 blink::WebPassOwnPtr<blink::WebFrameScheduler> frame2( | 70 std::unique_ptr<blink::WebFrameScheduler> frame2( |
71 web_view_scheduler_->createFrameScheduler(nullptr)); | 71 web_view_scheduler_->createFrameScheduler(nullptr)); |
72 web_view_scheduler_.reset(); | 72 web_view_scheduler_.reset(); |
73 } | 73 } |
74 | 74 |
75 namespace { | 75 namespace { |
76 class RepeatingTask : public blink::WebTaskRunner::Task { | 76 class RepeatingTask : public blink::WebTaskRunner::Task { |
77 public: | 77 public: |
78 RepeatingTask(blink::WebTaskRunner* web_task_runner, int* run_count) | 78 RepeatingTask(blink::WebTaskRunner* web_task_runner, int* run_count) |
79 : web_task_runner_(web_task_runner), run_count_(run_count) {} | 79 : web_task_runner_(web_task_runner), run_count_(run_count) {} |
80 | 80 |
(...skipping 412 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
493 // it will prevent further tasks from running (i.e. the RepeatingTask) by | 493 // it will prevent further tasks from running (i.e. the RepeatingTask) by |
494 // deleting the WebFrameScheduler. | 494 // deleting the WebFrameScheduler. |
495 timer_task_runner->postDelayedTask(BLINK_FROM_HERE, delete_frame_task, | 495 timer_task_runner->postDelayedTask(BLINK_FROM_HERE, delete_frame_task, |
496 9990.0); | 496 9990.0); |
497 | 497 |
498 mock_task_runner_->RunForPeriod(base::TimeDelta::FromSeconds(100)); | 498 mock_task_runner_->RunForPeriod(base::TimeDelta::FromSeconds(100)); |
499 EXPECT_EQ(10, run_count); | 499 EXPECT_EQ(10, run_count); |
500 } | 500 } |
501 | 501 |
502 } // namespace scheduler | 502 } // namespace scheduler |
OLD | NEW |