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

Commit c8787faa authored by Treehugger Robot's avatar Treehugger Robot Committed by Automerger Merge Worker
Browse files

Merge changes Id104edb5,Ie12b72b2 am: c17d5a14

parents 79d04687 c17d5a14
Loading
Loading
Loading
Loading
+1 −0
Original line number Original line Diff line number Diff line
@@ -37,6 +37,7 @@ class AudioPolicyTestManager : public AudioPolicyManager {
    using AudioPolicyManager::getDirectProfilesForAttributes;
    using AudioPolicyManager::getDirectProfilesForAttributes;
    using AudioPolicyManager::setDeviceConnectionState;
    using AudioPolicyManager::setDeviceConnectionState;
    using AudioPolicyManager::deviceToAudioPort;
    using AudioPolicyManager::deviceToAudioPort;
    using AudioPolicyManager::handleDeviceConfigChange;
    uint32_t getAudioPortGeneration() const { return mAudioPortGeneration; }
    uint32_t getAudioPortGeneration() const { return mAudioPortGeneration; }
};
};


+24 −0
Original line number Original line Diff line number Diff line
@@ -919,6 +919,30 @@ TEST_F(AudioPolicyManagerTestWithConfigurationFile, ListAudioPortsHasFlags) {
    EXPECT_TRUE(foundVoipTx);
    EXPECT_TRUE(foundVoipTx);
}
}


TEST_F(AudioPolicyManagerTestWithConfigurationFile, HandleDeviceConfigChange) {
    {
        const auto prevCounter = mClient->getRoutingUpdatedCounter();

        EXPECT_EQ(NO_ERROR, mManager->setDeviceConnectionState(AUDIO_DEVICE_OUT_BLUETOOTH_A2DP,
                                                               AUDIO_POLICY_DEVICE_STATE_AVAILABLE,
                                                               "", "", AUDIO_FORMAT_LDAC));
        const auto currCounter = mClient->getRoutingUpdatedCounter();
        EXPECT_GT(currCounter, prevCounter);
    }
    {
        const auto prevCounter = mClient->getRoutingUpdatedCounter();
        // Update device configuration
        EXPECT_EQ(NO_ERROR, mManager->handleDeviceConfigChange(AUDIO_DEVICE_OUT_BLUETOOTH_A2DP,
                                                               "" /*address*/, "" /*name*/,
                                                               AUDIO_FORMAT_AAC));

        // As mClient marks isReconfigA2dpSupported to false, device state needs to be toggled for
        // config changes to take effect
        const auto currCounter = mClient->getRoutingUpdatedCounter();
        EXPECT_GT(currCounter, prevCounter);
    }
}

using PolicyMixTuple = std::tuple<audio_usage_t, audio_source_t, uint32_t>;
using PolicyMixTuple = std::tuple<audio_usage_t, audio_source_t, uint32_t>;


class AudioPolicyManagerTestDynamicPolicy : public AudioPolicyManagerTestWithConfigurationFile {
class AudioPolicyManagerTestDynamicPolicy : public AudioPolicyManagerTestWithConfigurationFile {
+5 −0
Original line number Original line Diff line number Diff line
@@ -71,6 +71,9 @@
                <devicePort tagName="BT SCO Headset Mic" type="AUDIO_DEVICE_IN_BLUETOOTH_SCO_HEADSET"
                <devicePort tagName="BT SCO Headset Mic" type="AUDIO_DEVICE_IN_BLUETOOTH_SCO_HEADSET"
                            role="source" address="hfp_client_in">
                            role="source" address="hfp_client_in">
                </devicePort>
                </devicePort>
                <devicePort tagName="BT A2DP Out" type="AUDIO_DEVICE_OUT_BLUETOOTH_A2DP" role="sink"
                            encodedFormats="AUDIO_FORMAT_LDAC AUDIO_FORMAT_APTX AUDIO_FORMAT_APTX_HD AUDIO_FORMAT_AAC AUDIO_FORMAT_SBC">
                </devicePort>
            </devicePorts>
            </devicePorts>
            <routes>
            <routes>
                <route type="mix" sink="Speaker"
                <route type="mix" sink="Speaker"
@@ -85,6 +88,8 @@
                       sources="mixport_bt_hfp_output,voip_rx"/>
                       sources="mixport_bt_hfp_output,voip_rx"/>
                <route type="mix" sink="mixport_bt_hfp_input"
                <route type="mix" sink="mixport_bt_hfp_input"
                       sources="BT SCO Headset Mic"/>
                       sources="BT SCO Headset Mic"/>
                <route type="mix" sink="BT A2DP Out"
                       sources="primary output"/>
            </routes>
            </routes>
        </module>
        </module>