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

Commit 810407b1 authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Android (Google) Code Review
Browse files

Merge "Mocked system properties should return default value by default"

parents d765cfbd d2010e1b
Loading
Loading
Loading
Loading
+0 −5
Original line number Diff line number Diff line
@@ -2307,11 +2307,6 @@ public class DevicePolicyManagerTest extends DpmTestBase {
        // restore to the debuggable build state
        getServices().buildMock.isDebuggable = true;

        // Always return the default (second arg) when getting system property for long type
        when(getServices().systemProperties.getLong(anyString(), anyLong())).thenAnswer(
                invocation -> invocation.getArguments()[1]
        );

        // reset to default (0 means the admin is not participating, so default should be returned)
        dpm.setRequiredStrongAuthTimeout(admin1, 0);

+26 −0
Original line number Diff line number Diff line
@@ -16,9 +16,13 @@

package com.android.server.devicepolicy;

import static org.mockito.ArgumentMatchers.anyBoolean;
import static org.mockito.ArgumentMatchers.anyLong;
import static org.mockito.ArgumentMatchers.anyString;
import static org.mockito.Matchers.anyInt;
import static org.mockito.Matchers.eq;
import static org.mockito.Mockito.doReturn;
import static org.mockito.Mockito.when;

import android.app.admin.DevicePolicyManager;
import android.content.ComponentName;
@@ -62,6 +66,7 @@ public abstract class DpmTestBase extends AndroidTestCase {
        adminAnotherPackage = new ComponentName(DpmMockContext.ANOTHER_PACKAGE_NAME,
                "whatever.random.class");
        adminNoPerm = new ComponentName(mRealTestContext, DummyDeviceAdmins.AdminNoPerm.class);
        mockSystemPropertiesToReturnDefault();
    }

    @Override
@@ -213,4 +218,25 @@ public abstract class DpmTestBase extends AndroidTestCase {
        // Set up getPackageInfo().
        markPackageAsInstalled(admin.getPackageName(), ai, UserHandle.getUserId(packageUid));
    }

    /**
     * By default, system properties are mocked to return default value. Override the mock if you
     * want a specific value.
     */
    private void mockSystemPropertiesToReturnDefault() {
        when(getServices().systemProperties.get(
                anyString(), anyString())).thenAnswer(
                invocation -> invocation.getArguments()[1]
        );

        when(getServices().systemProperties.getBoolean(
                anyString(), anyBoolean())).thenAnswer(
                invocation -> invocation.getArguments()[1]
        );

        when(getServices().systemProperties.getLong(
                anyString(), anyLong())).thenAnswer(
                invocation -> invocation.getArguments()[1]
        );
    }
}