blob: 2b91064388b3ffe1d4c008fcbd3b72a771e4652e [file] [log] [blame]
// Copyright 2015 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "components/scheduler/child/scheduler_tqm_delegate_impl.h"
#include "base/message_loop/message_loop.h"
#include "base/test/test_simple_task_runner.h"
#include "base/time/default_tick_clock.h"
#include "testing/gtest/include/gtest/gtest.h"
namespace scheduler {
TEST(SchedulerTqmDelegateImplTest, TestTaskRunnerOverriding) {
base::MessageLoop loop;
scoped_refptr<base::SingleThreadTaskRunner> original_runner(
loop.task_runner());
scoped_refptr<base::SingleThreadTaskRunner> custom_runner(
new base::TestSimpleTaskRunner());
{
scoped_refptr<SchedulerTqmDelegateImpl> delegate(
SchedulerTqmDelegateImpl::Create(
&loop, make_scoped_ptr(new base::DefaultTickClock())));
delegate->SetDefaultTaskRunner(custom_runner);
DCHECK_EQ(custom_runner, loop.task_runner());
}
DCHECK_EQ(original_runner, loop.task_runner());
}
} // namespace scheduler