#include "services/audio/public/cpp/input_ipc.h"
#include <string>
#include <utility>
#include "base/functional/bind.h"
#include "base/test/task_environment.h"
#include "media/base/audio_capturer_source.h"
#include "media/mojo/mojom/audio_data_pipe.mojom.h"
#include "mojo/public/cpp/bindings/receiver.h"
#include "mojo/public/cpp/bindings/remote.h"
#include "mojo/public/cpp/system/buffer.h"
#include "mojo/public/cpp/system/platform_handle.h"
#include "services/audio/public/cpp/device_factory.h"
#include "services/audio/public/cpp/fake_stream_factory.h"
#include "testing/gmock/include/gmock/gmock.h"
#include "testing/gtest/include/gtest/gtest.h"
#include "third_party/abseil-cpp/absl/utility/utility.h"
_;
StrictMock;
namespace audio {
namespace {
const char kDeviceId[] = …;
const size_t kShMemSize = …;
const double kNewVolume = …;
class MockStream : public media::mojom::AudioInputStream { … };
class TestStreamFactory : public audio::FakeStreamFactory { … };
class MockDelegate : public media::AudioInputIPCDelegate { … };
class InputIPCTest : public ::testing::Test { … };
}
TEST_F(InputIPCTest, CreateStreamPropagates) { … }
TEST_F(InputIPCTest, StreamCreatedAfterCloseIsIgnored) { … }
TEST_F(InputIPCTest, CreateStreamPropagatesInitiallyMuted) { … }
TEST_F(InputIPCTest, MutedStateChangesPropagates) { … }
TEST_F(InputIPCTest, Record_Records) { … }
TEST_F(InputIPCTest, IsReusable) { … }
TEST_F(InputIPCTest, SetVolume_SetsVolume) { … }
TEST_F(InputIPCTest, SetOutputDeviceForAec_AssociatesInputAndOutputForAec) { … }
TEST_F(InputIPCTest, FailedStreamCreationNullCallback) { … }
TEST_F(InputIPCTest, FailedStreamCreationDestuctedFactory) { … }
}