#include "third_party/webrtc_overrides/metronome_source.h"
#include <memory>
#include "base/functional/bind.h"
#include "base/logging.h"
#include "base/memory/raw_ptr.h"
#include "base/memory/scoped_refptr.h"
#include "base/notreached.h"
#include "base/synchronization/waitable_event.h"
#include "base/task/thread_pool.h"
#include "base/test/bind.h"
#include "base/test/task_environment.h"
#include "base/time/time.h"
#include "testing/gmock/include/gmock/gmock.h"
#include "testing/gtest/include/gtest/gtest.h"
#include "third_party/webrtc/api/task_queue/task_queue_base.h"
#include "third_party/webrtc_overrides/timer_based_tick_provider.h"
namespace blink {
namespace {
InSequence;
Invoke;
Mock;
MockFunction;
Return;
class MockTickProvider : public MetronomeSource::TickProvider { … };
class MetronomeSourceTest : public ::testing::Test { … };
TEST_F(MetronomeSourceTest, SupportsCallsBeyondSourceLifetime) { … }
TEST_F(MetronomeSourceTest, InvokesRequestedCallbackOnTick) { … }
TEST_F(MetronomeSourceTest, InvokesTwoCallbacksOnSameTick) { … }
TEST_F(MetronomeSourceTest,
InvokesRequestedCallbackOnNewTickFromCallbackOnTick) { … }
TEST_F(MetronomeSourceTest, ReturnsTickProviderTickPeriod) { … }
}
}