// Copyright 2012 The Chromium Authors // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #ifdef UNSAFE_BUFFERS_BUILD // TODO(crbug.com/40285824): Remove this and convert code to safer constructs. #pragma allow_unsafe_buffers #endif #include <memory> #include "base/functional/bind.h" #include "base/functional/callback_helpers.h" #include "base/strings/stringprintf.h" #include "media/base/audio_bus.h" #include "media/base/audio_pull_fifo.h" #include "testing/gtest/include/gtest/gtest.h" namespace media { // Block diagram of a possible real-world usage: // // | Producer | ----> | AudioPullFifo | ----> | Consumer | // push pull // 2048 ----> (2048) ----> ~512 // Number of channels in each audio bus. static int kChannels = …; // Max number of audio framed the FIFO can contain. static const int kMaxFramesInFifo = …; class AudioPullFifoTest : public testing::TestWithParam<int> { … }; TEST_P(AudioPullFifoTest, Consume) { … } // Test common |frames_to_consume| values which will be used as input // parameter to AudioPullFifo::Consume() when the consumer asks for data. INSTANTIATE_TEST_SUITE_P(…); } // namespace media