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

Commit 0149ca4a authored by Parth Sane's avatar Parth Sane
Browse files

Add tests for ServiceManager Java Binder API

Bug: 333854840
Test: atest android.os.BinderTest
Change-Id: Iaf1fd1e5daea7103a873bc8f8aa0b78377e57714
parent c5355450
Loading
Loading
Loading
Loading
+28 −0
Original line number Diff line number Diff line
@@ -20,6 +20,8 @@ import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.assertNull;
import static org.junit.Assert.assertSame;
import static org.mockito.ArgumentMatchers.anyBoolean;
import static org.mockito.ArgumentMatchers.anyInt;
import static org.testng.Assert.assertThrows;

import android.platform.test.annotations.IgnoreUnderRavenwood;
@@ -27,6 +29,9 @@ import android.platform.test.ravenwood.RavenwoodRule;

import androidx.test.filters.SmallTest;

import com.android.internal.os.BinderInternal;


import org.junit.Rule;
import org.junit.Test;

@@ -81,4 +86,27 @@ public class BinderTest {
        binder.setExtension(null);
        assertNull(binder.getExtension());
    }

    @SmallTest
    @Test(expected = java.lang.SecurityException.class)
    public void testServiceManagerNativeSecurityException() throws RemoteException {
        // Find the service manager
        IServiceManager sServiceManager = ServiceManagerNative
                .asInterface(Binder.allowBlocking(BinderInternal.getContextObject()));

        Binder binder = new Binder();
        sServiceManager.addService("ValidName",  binder,
                anyBoolean(), anyInt());
    }

    @SmallTest
    @Test(expected = java.lang.NullPointerException.class)
    public void testServiceManagerNativeNullptrException() throws RemoteException {
        // Find the service manager
        IServiceManager sServiceManager = ServiceManagerNative
                .asInterface(Binder.allowBlocking(BinderInternal.getContextObject()));

        sServiceManager.addService("ValidName",  null,
                anyBoolean(), anyInt());
    }
}