Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit db89bd94 authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Automerger Merge Worker
Browse files

Merge changes Ie3669798,I4b34cc34 into rvc-dev am: 4ac0f0f3

Change-Id: Ia4576a51c1fbff9998bf1ca8d61a0edc7ac76c7b
parents 7ae2eac0 4ac0f0f3
Loading
Loading
Loading
Loading
+50 −20
Original line number Diff line number Diff line
@@ -155,11 +155,20 @@ static const Uuid LOUDNESS_ENHANCER_EFFECT_TYPE = {
    0xfe3199be, 0xaed0, 0x413f, 0x87bb,
    std::array<uint8_t, 6>{{0x11, 0x26, 0x0e, 0xb6, 0x3c, 0xf1}}};

enum { PARAM_FACTORY_NAME, PARAM_EFFECT_UUID };
using EffectParameter = std::tuple<std::string, Uuid>;

static inline std::string EffectParameterToString(
        const ::testing::TestParamInfo<EffectParameter>& info) {
    return ::android::hardware::PrintInstanceNameToString(::testing::TestParamInfo<std::string>{
            std::get<PARAM_FACTORY_NAME>(info.param), info.index});
}

// The main test class for Audio Effect HIDL HAL.
class AudioEffectHidlTest : public ::testing::TestWithParam<std::string> {
class AudioEffectHidlTest : public ::testing::TestWithParam<EffectParameter> {
  public:
    void SetUp() override {
        effectsFactory = IEffectsFactory::getService(GetParam());
        effectsFactory = IEffectsFactory::getService(std::get<PARAM_FACTORY_NAME>(GetParam()));
        ASSERT_NE(nullptr, effectsFactory.get());

        findAndCreateEffect(getEffectType());
@@ -180,7 +189,7 @@ class AudioEffectHidlTest : public ::testing::TestWithParam<std::string> {
        RecordProperty("description", description);
    }

    virtual Uuid getEffectType() { return EQUALIZER_EFFECT_TYPE; }
    Uuid getEffectType() const { return std::get<PARAM_EFFECT_UUID>(GetParam()); }

    void findAndCreateEffect(const Uuid& type);
    void findEffectInstance(const Uuid& type, Uuid* uuid);
@@ -369,7 +378,9 @@ TEST_P(AudioEffectHidlTest, DisableEnableDisable) {
    description("Verify Disable -> Enable -> Disable sequence for an effect");
    Return<Result> ret = effect->disable();
    EXPECT_TRUE(ret.isOk());
    EXPECT_EQ(Result::INVALID_ARGUMENTS, ret);
    // Note: some legacy effects may return -EINVAL (INVALID_ARGUMENTS),
    //       more canonical is to return -ENOSYS (NOT_SUPPORTED)
    EXPECT_TRUE(ret == Result::NOT_SUPPORTED || ret == Result::INVALID_ARGUMENTS);
    ret = effect->enable();
    EXPECT_TRUE(ret.isOk());
    EXPECT_EQ(Result::OK, ret);
@@ -526,8 +537,12 @@ class EqualizerAudioEffectHidlTest : public AudioEffectHidlTest {
        ASSERT_NE(nullptr, equalizer.get());
    }

    void TearDown() override {
        equalizer.clear();
        AudioEffectHidlTest::TearDown();
    }

  protected:
    Uuid getEffectType() override { return EQUALIZER_EFFECT_TYPE; }
    void getNumBands(uint16_t* numBands);
    void getLevelRange(int16_t* minLevel, int16_t* maxLevel);
    void getBandFrequencyRange(uint16_t band, uint32_t* minFreq, uint32_t* centerFreq,
@@ -772,9 +787,12 @@ class LoudnessEnhancerAudioEffectHidlTest : public AudioEffectHidlTest {
        ASSERT_NE(nullptr, enhancer.get());
    }

   protected:
    Uuid getEffectType() override { return LOUDNESS_ENHANCER_EFFECT_TYPE; }
    void TearDown() override {
        enhancer.clear();
        AudioEffectHidlTest::TearDown();
    }

  protected:
    sp<ILoudnessEnhancerEffect> enhancer;
};

@@ -799,19 +817,31 @@ TEST_P(LoudnessEnhancerAudioEffectHidlTest, GetSetTargetGain) {
    EXPECT_EQ(gain, actualGain);
}

INSTANTIATE_TEST_SUITE_P(EffectsFactory, AudioEffectsFactoryHidlTest,
                         ::testing::ValuesIn(::android::hardware::getAllHalInstanceNames(
                                 IEffectsFactory::descriptor)),
                         ::android::hardware::PrintInstanceNameToString);
INSTANTIATE_TEST_SUITE_P(
        EffectsFactory, AudioEffectsFactoryHidlTest,
        testing::ValuesIn(android::hardware::getAllHalInstanceNames(IEffectsFactory::descriptor)),
        android::hardware::PrintInstanceNameToString);
        Equalizer_IEffect, AudioEffectHidlTest,
        ::testing::Combine(::testing::ValuesIn(::android::hardware::getAllHalInstanceNames(
                                   IEffectsFactory::descriptor)),
                           ::testing::Values(EQUALIZER_EFFECT_TYPE)),
        EffectParameterToString);
INSTANTIATE_TEST_SUITE_P(
        Equalizer, AudioEffectHidlTest,
        testing::ValuesIn(android::hardware::getAllHalInstanceNames(IEffectsFactory::descriptor)),
        android::hardware::PrintInstanceNameToString);
        LoudnessEnhancer_IEffect, AudioEffectHidlTest,
        ::testing::Combine(::testing::ValuesIn(::android::hardware::getAllHalInstanceNames(
                                   IEffectsFactory::descriptor)),
                           ::testing::Values(LOUDNESS_ENHANCER_EFFECT_TYPE)),
        EffectParameterToString);
INSTANTIATE_TEST_SUITE_P(
        Equalizer, EqualizerAudioEffectHidlTest,
        testing::ValuesIn(android::hardware::getAllHalInstanceNames(IEffectsFactory::descriptor)),
        android::hardware::PrintInstanceNameToString);
        ::testing::Combine(::testing::ValuesIn(::android::hardware::getAllHalInstanceNames(
                                   IEffectsFactory::descriptor)),
                           ::testing::Values(EQUALIZER_EFFECT_TYPE)),
        EffectParameterToString);
INSTANTIATE_TEST_SUITE_P(
        LoudnessEnhancer, LoudnessEnhancerAudioEffectHidlTest,
        testing::ValuesIn(android::hardware::getAllHalInstanceNames(IEffectsFactory::descriptor)),
        android::hardware::PrintInstanceNameToString);
        ::testing::Combine(::testing::ValuesIn(::android::hardware::getAllHalInstanceNames(
                                   IEffectsFactory::descriptor)),
                           ::testing::Values(LOUDNESS_ENHANCER_EFFECT_TYPE)),
        EffectParameterToString);