#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) { … }
}
}