Merge "Unit test for min_futurity exemption" into rvc-dev
This commit is contained in:
committed by
Android (Google) Code Review
commit
23cc2b8958
@@ -46,7 +46,6 @@ import static com.android.server.AlarmManagerService.Constants.KEY_MAX_INTERVAL;
|
|||||||
import static com.android.server.AlarmManagerService.Constants.KEY_MIN_FUTURITY;
|
import static com.android.server.AlarmManagerService.Constants.KEY_MIN_FUTURITY;
|
||||||
import static com.android.server.AlarmManagerService.Constants.KEY_MIN_INTERVAL;
|
import static com.android.server.AlarmManagerService.Constants.KEY_MIN_INTERVAL;
|
||||||
import static com.android.server.AlarmManagerService.IS_WAKEUP_MASK;
|
import static com.android.server.AlarmManagerService.IS_WAKEUP_MASK;
|
||||||
import static com.android.server.AlarmManagerService.MILLIS_IN_DAY;
|
|
||||||
import static com.android.server.AlarmManagerService.TIME_CHANGED_MASK;
|
import static com.android.server.AlarmManagerService.TIME_CHANGED_MASK;
|
||||||
import static com.android.server.AlarmManagerService.WORKING_INDEX;
|
import static com.android.server.AlarmManagerService.WORKING_INDEX;
|
||||||
|
|
||||||
@@ -107,9 +106,9 @@ import java.util.ArrayList;
|
|||||||
public class AlarmManagerServiceTest {
|
public class AlarmManagerServiceTest {
|
||||||
private static final String TAG = AlarmManagerServiceTest.class.getSimpleName();
|
private static final String TAG = AlarmManagerServiceTest.class.getSimpleName();
|
||||||
private static final String TEST_CALLING_PACKAGE = "com.android.framework.test-package";
|
private static final String TEST_CALLING_PACKAGE = "com.android.framework.test-package";
|
||||||
private static final int SYSTEM_UI_UID = 123456789;
|
private static final int SYSTEM_UI_UID = 12345;
|
||||||
private static final int TEST_CALLING_UID = 12345;
|
private static final int TEST_CALLING_UID = 67890;
|
||||||
private static final long RESTRICTED_WINDOW_MS = MILLIS_IN_DAY;
|
private static final int TEST_CALLING_USER = UserHandle.getUserId(TEST_CALLING_UID);
|
||||||
|
|
||||||
private long mAppStandbyWindow;
|
private long mAppStandbyWindow;
|
||||||
private AlarmManagerService mService;
|
private AlarmManagerService mService;
|
||||||
@@ -257,6 +256,7 @@ public class AlarmManagerServiceTest {
|
|||||||
.mockStatic(LocalServices.class)
|
.mockStatic(LocalServices.class)
|
||||||
.spyStatic(Looper.class)
|
.spyStatic(Looper.class)
|
||||||
.spyStatic(Settings.Global.class)
|
.spyStatic(Settings.Global.class)
|
||||||
|
.spyStatic(UserHandle.class)
|
||||||
.strictness(Strictness.WARN)
|
.strictness(Strictness.WARN)
|
||||||
.startMocking();
|
.startMocking();
|
||||||
doReturn(mIActivityManager).when(ActivityManager::getService);
|
doReturn(mIActivityManager).when(ActivityManager::getService);
|
||||||
@@ -268,9 +268,9 @@ public class AlarmManagerServiceTest {
|
|||||||
doCallRealMethod().when((MockedVoidMethod) () ->
|
doCallRealMethod().when((MockedVoidMethod) () ->
|
||||||
LocalServices.addService(eq(AlarmManagerInternal.class), any()));
|
LocalServices.addService(eq(AlarmManagerInternal.class), any()));
|
||||||
doCallRealMethod().when(() -> LocalServices.getService(AlarmManagerInternal.class));
|
doCallRealMethod().when(() -> LocalServices.getService(AlarmManagerInternal.class));
|
||||||
|
doReturn(false).when(() -> UserHandle.isCore(TEST_CALLING_UID));
|
||||||
when(mUsageStatsManagerInternal.getAppStandbyBucket(eq(TEST_CALLING_PACKAGE),
|
when(mUsageStatsManagerInternal.getAppStandbyBucket(eq(TEST_CALLING_PACKAGE),
|
||||||
eq(UserHandle.getUserId(TEST_CALLING_UID)), anyLong()))
|
eq(TEST_CALLING_USER), anyLong())).thenReturn(STANDBY_BUCKET_ACTIVE);
|
||||||
.thenReturn(STANDBY_BUCKET_ACTIVE);
|
|
||||||
doReturn(Looper.getMainLooper()).when(Looper::myLooper);
|
doReturn(Looper.getMainLooper()).when(Looper::myLooper);
|
||||||
|
|
||||||
when(mMockContext.getContentResolver()).thenReturn(mMockResolver);
|
when(mMockContext.getContentResolver()).thenReturn(mMockResolver);
|
||||||
@@ -460,6 +460,19 @@ public class AlarmManagerServiceTest {
|
|||||||
assertEquals(expectedTriggerTime, mTestTimer.getElapsed());
|
assertEquals(expectedTriggerTime, mTestTimer.getElapsed());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void testMinFuturityCoreUid() {
|
||||||
|
doReturn("min_futurity=10").when(() ->
|
||||||
|
Settings.Global.getString(mMockResolver, Settings.Global.ALARM_MANAGER_CONSTANTS));
|
||||||
|
mService.mConstants.onChange(false, null);
|
||||||
|
assertEquals(10, mService.mConstants.MIN_FUTURITY);
|
||||||
|
final long triggerTime = mNowElapsedTest + 1;
|
||||||
|
doReturn(true).when(() -> UserHandle.isCore(TEST_CALLING_UID));
|
||||||
|
final long expectedTriggerTime = triggerTime;
|
||||||
|
setTestAlarm(ELAPSED_REALTIME_WAKEUP, triggerTime, getNewMockPendingIntent());
|
||||||
|
assertEquals(expectedTriggerTime, mTestTimer.getElapsed());
|
||||||
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testEarliestAlarmSet() {
|
public void testEarliestAlarmSet() {
|
||||||
final PendingIntent pi6 = getNewMockPendingIntent();
|
final PendingIntent pi6 = getNewMockPendingIntent();
|
||||||
|
|||||||
Reference in New Issue
Block a user