chromium/third_party/blink/renderer/platform/peerconnection/vsync_tick_provider_test.cc

// Copyright 2022 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#include "third_party/blink/renderer/platform/peerconnection/vsync_tick_provider.h"

#include <memory>

#include "base/memory/raw_ptr.h"
#include "base/task/sequenced_task_runner.h"
#include "base/test/mock_callback.h"
#include "base/test/task_environment.h"
#include "base/time/time.h"
#include "metronome_source.h"
#include "testing/gmock/include/gmock/gmock.h"
#include "testing/gtest/include/gtest/gtest.h"
#include "third_party/blink/renderer/platform/peerconnection/vsync_provider.h"

namespace blink {
namespace {

Mock;

class FakeVSyncProvider : public VSyncProvider {};

class FakeDefaultTickProvider : public MetronomeSource::TickProvider {};

class VSyncTickProviderTest : public ::testing::Test {};

TEST_F(VSyncTickProviderTest, ReportsDefaultTickPeriod) {}

TEST_F(VSyncTickProviderTest, ReportsDefaultTickPeriodDuringTransition) {}

TEST_F(VSyncTickProviderTest, ReportsVSyncTickPeriod) {}

TEST_F(VSyncTickProviderTest, ReportsDefaultTickPeriodAfterSwitchBack) {}

TEST_F(VSyncTickProviderTest, DispatchesDefaultTicks) {}

TEST_F(VSyncTickProviderTest, DispatchesDefaultTicksDuringSwitch) {}

TEST_F(VSyncTickProviderTest, DispatchesCallbackOnSwitch) {}

TEST_F(VSyncTickProviderTest, DispatchesVSyncs) {}

TEST_F(VSyncTickProviderTest, DispatchesDefaultAfterSwitchBackFromVSyncs) {}

TEST_F(VSyncTickProviderTest,
       DispatchesCallbackRequestedBeforeSwitchBackFromVSyncs) {}

TEST_F(VSyncTickProviderTest, IgnoresVSyncsAfterDefaultSwitchback) {}

TEST_F(VSyncTickProviderTest, MultipleMetronomeAreAlignedOnTick) {}

}  // namespace
}  // namespace blink