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

Commit c39d6f57 authored by Tyler Gunn's avatar Tyler Gunn Committed by Automerger Merge Worker
Browse files

Merge "Add unit test for changing offered RTP header extensions." am: e25ed076

Original change: https://android-review.googlesource.com/c/platform/frameworks/opt/telephony/+/1497039

Change-Id: I02a4dcc12ccd92ec60745e32e79cd397d41e2a7e
parents 587cce5b e25ed076
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;