mirror of
https://github.com/Evolution-X/hardware_interfaces
synced 2026-02-01 16:50:18 +00:00
Merge "audio: Implement ITelephony core interface for telecom"
This commit is contained in:
@@ -84,6 +84,7 @@ using aidl::android::media::audio::common::AudioPortDeviceExt;
|
||||
using aidl::android::media::audio::common::AudioPortExt;
|
||||
using aidl::android::media::audio::common::AudioSource;
|
||||
using aidl::android::media::audio::common::AudioUsage;
|
||||
using aidl::android::media::audio::common::Float;
|
||||
using aidl::android::media::audio::common::Void;
|
||||
using android::hardware::audio::common::getChannelCount;
|
||||
using android::hardware::audio::common::isBitPositionFlagSet;
|
||||
@@ -1828,6 +1829,46 @@ TEST_P(AudioCoreTelephony, SwitchAudioMode) {
|
||||
}
|
||||
}
|
||||
|
||||
TEST_P(AudioCoreTelephony, TelecomConfig) {
|
||||
static const auto kStatuses = {EX_NONE, EX_UNSUPPORTED_OPERATION};
|
||||
if (telephony == nullptr) {
|
||||
GTEST_SKIP() << "Telephony is not supported";
|
||||
}
|
||||
ndk::ScopedAStatus status;
|
||||
ITelephony::TelecomConfig telecomConfig;
|
||||
ASSERT_STATUS(kStatuses, status = telephony->setTelecomConfig({}, &telecomConfig));
|
||||
if (status.getExceptionCode() == EX_UNSUPPORTED_OPERATION) {
|
||||
GTEST_SKIP() << "Telecom is not supported";
|
||||
}
|
||||
EXPECT_TRUE(telecomConfig.voiceVolume.has_value());
|
||||
EXPECT_NE(ITelephony::TelecomConfig::TtyMode::UNSPECIFIED, telecomConfig.ttyMode);
|
||||
EXPECT_TRUE(telecomConfig.isHacEnabled.has_value());
|
||||
ITelephony::TelecomConfig telecomConfig2;
|
||||
ASSERT_IS_OK(telephony->setTelecomConfig(telecomConfig, &telecomConfig2));
|
||||
EXPECT_EQ(telecomConfig, telecomConfig2);
|
||||
}
|
||||
|
||||
TEST_P(AudioCoreTelephony, TelecomConfigInvalid) {
|
||||
static const auto kStatuses = {EX_NONE, EX_UNSUPPORTED_OPERATION};
|
||||
if (telephony == nullptr) {
|
||||
GTEST_SKIP() << "Telephony is not supported";
|
||||
}
|
||||
ndk::ScopedAStatus status;
|
||||
ITelephony::TelecomConfig telecomConfig;
|
||||
ASSERT_STATUS(kStatuses, status = telephony->setTelecomConfig({}, &telecomConfig));
|
||||
if (status.getExceptionCode() == EX_UNSUPPORTED_OPERATION) {
|
||||
GTEST_SKIP() << "Telecom is not supported";
|
||||
}
|
||||
EXPECT_STATUS(EX_ILLEGAL_ARGUMENT,
|
||||
telephony->setTelecomConfig(
|
||||
{.voiceVolume = Float{ITelephony::TelecomConfig::VOICE_VOLUME_MIN - 1}},
|
||||
&telecomConfig));
|
||||
EXPECT_STATUS(EX_ILLEGAL_ARGUMENT,
|
||||
telephony->setTelecomConfig(
|
||||
{.voiceVolume = Float{ITelephony::TelecomConfig::VOICE_VOLUME_MAX + 1}},
|
||||
&telecomConfig));
|
||||
}
|
||||
|
||||
using CommandSequence = std::vector<StreamDescriptor::Command>;
|
||||
class StreamLogicDriverInvalidCommand : public StreamLogicDriver {
|
||||
public:
|
||||
|
||||
Reference in New Issue
Block a user