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

Commit f262abd3 authored by Tyler Gunn's avatar Tyler Gunn
Browse files

Add unit test for changing offered RTP header extensions.

Test: Update MmtelFeatureTests
Bug: 163085177
Change-Id: I90e3df5c65c21088a6278e099afcc424a3e5354f
parent 78b82dfc
Loading
Loading
Loading
Loading
+20 −0
Original line number Diff line number Diff line
@@ -24,6 +24,7 @@ import static org.mockito.ArgumentMatchers.eq;
import static org.mockito.Mockito.spy;
import static org.mockito.Mockito.verify;

import android.net.Uri;
import android.os.Handler;
import android.os.Looper;
import android.os.Message;
@@ -47,6 +48,9 @@ import org.junit.runner.RunWith;
import org.mockito.ArgumentCaptor;
import org.mockito.Mockito;

import java.util.ArrayList;
import java.util.concurrent.TimeUnit;

@RunWith(AndroidJUnit4.class)
public class MmTelFeatureTests extends ImsTestBase {

@@ -171,4 +175,20 @@ public class MmTelFeatureTests extends ImsTestBase {
        waitForHandlerAction(mHandler, TEST_RESULT_DELAY_MS);
        assertTrue(mHandlerResults[TEST_SEND_DTMF_RESULT]);
    }

    @SmallTest
    @Test
    public void testChangeOfferedRtpHeaderExtensionTypes() throws Exception {
        Message resultMessage = Message.obtain(mHandler, TEST_SEND_DTMF_RESULT);
        resultMessage.replyTo = mHandlerMessenger;
        RtpHeaderExtensionType type = new RtpHeaderExtensionType(1,
                Uri.parse("http://developer.android.com/test"));
        ArrayList<RtpHeaderExtensionType> types = new ArrayList<>();
        types.add(type);
        mFeatureBinder.changeOfferedRtpHeaderExtensionTypes(types);
        waitForHandlerAction(mHandler, TEST_RESULT_DELAY_MS);
        mFeature.configuredRtpHeaderExtensions.await(TEST_RESULT_DELAY_MS, TimeUnit.MILLISECONDS);
        assertEquals(types.size(), mFeature.receivedExtensions.size());
        assertEquals(types.get(0), mFeature.receivedExtensions.iterator().next());
    }
}
+11 −0
Original line number Diff line number Diff line
@@ -28,12 +28,17 @@ import android.telephony.ims.stub.ImsMultiEndpointImplBase;
import android.telephony.ims.stub.ImsRegistrationImplBase;
import android.telephony.ims.stub.ImsUtImplBase;

import java.util.Set;
import java.util.concurrent.CountDownLatch;

public class TestMmTelFeature extends MmTelFeature {

    public boolean queryConfigurationResult = false;
    public int setCapabilitiesResult = ImsFeature.CAPABILITY_SUCCESS;
    public CapabilityChangeRequest lastRequest;
    public boolean isUtInterfaceCalled = false;
    public CountDownLatch configuredRtpHeaderExtensions = new CountDownLatch(1);
    Set<RtpHeaderExtensionType> receivedExtensions = null;

    private final TestImsCallSession mCallSession = new TestImsCallSession();
    private class TestImsCallSession extends ImsCallSessionImplBase {
@@ -60,6 +65,12 @@ public class TestMmTelFeature extends MmTelFeature {
        return super.createCallProfile(callSessionType, callType);
    }

    @Override
    public void changeOfferedRtpHeaderExtensionTypes(Set<RtpHeaderExtensionType> types) {
        receivedExtensions = types;
        configuredRtpHeaderExtensions.countDown();
    }

    @Override
    public ImsCallSessionImplBase createCallSession(ImsCallProfile profile) {
        return mCallSession;