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

Commit e25ed076 authored by Tyler Gunn's avatar Tyler Gunn Committed by Gerrit Code Review
Browse files

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

parents d046f19c f262abd3
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;