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

Side by Side Diff: components/scheduler/child/virtual_time_task_runner_delegate_unittest.cc

Issue 1424053002: Adds a flag to support "Virtual Time" to the blink scheduler (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Helps if I upload the right files ;) Created 5 years, 1 month 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
(Empty)
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
3 // found in the LICENSE file.
4
5 #include "components/scheduler/child/virtual_time_task_runner_delegate.h"
6
7 #include "base/bind.h"
8 #include "testing/gtest/include/gtest/gtest.h"
9
10 namespace scheduler {
11
12 class VirtualTimeTaskRunnerDelegateTest : public testing::Test {
13 public:
14 VirtualTimeTaskRunnerDelegateTest() {}
15
16 ~VirtualTimeTaskRunnerDelegateTest() override {}
17
18 void SetUp() override {
19 message_loop_.reset(new base::MessageLoop());
20 initial_time_ = base::TimeTicks() + base::TimeDelta::FromSeconds(100);
21 virtual_time_task_runner_delegate_ = VirtualTimeTaskRunnerDelegate::Create(
22 message_loop_.get(), initial_time_);
23 }
24
25 base::TimeTicks initial_time_;
26 scoped_ptr<base::MessageLoop> message_loop_;
27
28 scoped_refptr<VirtualTimeTaskRunnerDelegate>
29 virtual_time_task_runner_delegate_;
30 };
31
32 namespace {
33 void TestFunc(bool* run) {
34 *run = true;
35 }
36 }
37
38 TEST_F(VirtualTimeTaskRunnerDelegateTest, OnNoMoreWork_TimersFastForward) {
39 bool was_run = false;
40 virtual_time_task_runner_delegate_->PostDelayedTask(
41 FROM_HERE, base::Bind(TestFunc, &was_run),
42 base::TimeDelta::FromSeconds(1));
43
44 EXPECT_EQ(initial_time_, virtual_time_task_runner_delegate_->NowTicks());
45
46 virtual_time_task_runner_delegate_->OnNoMoreWork();
47
48 EXPECT_EQ(initial_time_ + base::TimeDelta::FromSeconds(1),
49 virtual_time_task_runner_delegate_->NowTicks());
50
51 message_loop_->RunUntilIdle();
52 EXPECT_TRUE(was_run);
53 }
54
55 } // namespace scheduler
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698