blob: 7b02c7988ca38750482c2ef3075d40a9739eb946 [file] [log] [blame]
// Copyright 2016 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 "chromecast/system/reboot/reboot_util.h"
#include "base/test/mock_callback.h"
#include "testing/gtest/include/gtest/gtest.h"
namespace chromecast {
// Ensure that we can call RebootNow during a test without crashing
// and that it properly keeps track of the reboot source.
TEST(RebootUtil, CaptureReboot) {
base::MockCallback<RebootUtil::RebootCallback> callback;
RebootUtil::SetRebootCallbackForTest(callback.Get());
EXPECT_CALL(callback, Run(RebootShlib::RebootSource::FORCED))
.WillOnce(testing::Return(true));
EXPECT_TRUE(RebootUtil::RebootNow(RebootShlib::RebootSource::FORCED));
RebootUtil::ClearRebootCallbackForTest();
}
} // namespace chromecast