diff options
| author | 2023-04-28 23:04:35 +0000 | |
|---|---|---|
| committer | 2023-04-28 23:04:35 +0000 | |
| commit | 1fd93def5799173cbcd95b8bfa42edeae8e49b17 (patch) | |
| tree | f66a783608d53f1e385526e40da252998c41cd4d | |
| parent | aed33c169759cf61d5bc17ab54f30c3b611aee31 (diff) | |
| parent | c2c83bc159409e2eef7160ec861e3a7e65a478a2 (diff) | |
Avoid flakiness from DeviceConfig. am: c2c83bc159
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/22933028
Change-Id: I8a6ae7487aeed2b5597520459563918702461638
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
| -rw-r--r-- | services/tests/mockingservicestests/src/com/android/server/job/JobConcurrencyManagerTest.java | 30 |
1 files changed, 29 insertions, 1 deletions
diff --git a/services/tests/mockingservicestests/src/com/android/server/job/JobConcurrencyManagerTest.java b/services/tests/mockingservicestests/src/com/android/server/job/JobConcurrencyManagerTest.java index b354c7b3d1f3..13bc5707dde3 100644 --- a/services/tests/mockingservicestests/src/com/android/server/job/JobConcurrencyManagerTest.java +++ b/services/tests/mockingservicestests/src/com/android/server/job/JobConcurrencyManagerTest.java @@ -16,14 +16,25 @@ package com.android.server.job; +import static com.android.dx.mockito.inline.extended.ExtendedMockito.doAnswer; +import static com.android.dx.mockito.inline.extended.ExtendedMockito.doReturn; +import static com.android.dx.mockito.inline.extended.ExtendedMockito.mockitoSession; import static com.android.dx.mockito.inline.extended.ExtendedMockito.spyOn; import static com.android.server.job.JobConcurrencyManager.KEY_PKG_CONCURRENCY_LIMIT_EJ; import static com.android.server.job.JobConcurrencyManager.KEY_PKG_CONCURRENCY_LIMIT_REGULAR; +import static com.android.server.job.JobConcurrencyManager.WORK_TYPE_BG; +import static com.android.server.job.JobConcurrencyManager.WORK_TYPE_BGUSER; +import static com.android.server.job.JobConcurrencyManager.WORK_TYPE_BGUSER_IMPORTANT; +import static com.android.server.job.JobConcurrencyManager.WORK_TYPE_EJ; +import static com.android.server.job.JobConcurrencyManager.WORK_TYPE_FGS; +import static com.android.server.job.JobConcurrencyManager.WORK_TYPE_NONE; +import static com.android.server.job.JobConcurrencyManager.WORK_TYPE_TOP; import static junit.framework.Assert.assertFalse; import static junit.framework.Assert.assertTrue; import static org.mockito.Mockito.doReturn; +import static org.mockito.Mockito.eq; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.when; @@ -52,6 +63,13 @@ import org.junit.Before; import org.junit.BeforeClass; import org.junit.Test; import org.junit.runner.RunWith; +import org.mockito.Mock; +import org.mockito.MockitoSession; +import org.mockito.quality.Strictness; +import org.mockito.stubbing.Answer; + +import java.util.ArrayList; +import java.util.List; @RunWith(AndroidJUnit4.class) @SmallTest @@ -64,6 +82,7 @@ public final class JobConcurrencyManagerTest { private int mDefaultUserId; private GracePeriodObserver mGracePeriodObserver; private Context mContext; + private MockitoSession mMockingSession; private Resources mResources; private PendingJobQueue mPendingJobQueue; private DeviceConfig.Properties.Builder mConfigBuilder; @@ -83,6 +102,11 @@ public final class JobConcurrencyManagerTest { @Before public void setUp() { + mMockingSession = mockitoSession() + .initMocks(this) + .spyStatic(DeviceConfig.class) + .strictness(Strictness.LENIENT) + .startMocking(); final JobSchedulerService jobSchedulerService = mock(JobSchedulerService.class); mContext = mock(Context.class); mResources = mock(Resources.class); @@ -91,6 +115,8 @@ public final class JobConcurrencyManagerTest { when(mContext.getResources()).thenReturn(mResources); doReturn(mContext).when(jobSchedulerService).getTestableContext(); mConfigBuilder = new DeviceConfig.Properties.Builder(DeviceConfig.NAMESPACE_JOB_SCHEDULER); + doAnswer((Answer<DeviceConfig.Properties>) invocationOnMock -> mConfigBuilder.build()) + .when(() -> DeviceConfig.getProperties(eq(DeviceConfig.NAMESPACE_JOB_SCHEDULER))); mPendingJobQueue = new PendingJobQueue(); doReturn(mPendingJobQueue).when(jobSchedulerService).getPendingJobQueue(); mJobConcurrencyManager = new JobConcurrencyManager(jobSchedulerService); @@ -106,6 +132,9 @@ public final class JobConcurrencyManagerTest { @After public void tearDown() throws Exception { resetConfig(); + if (mMockingSession != null) { + mMockingSession.finishMocking(); + } } @Test @@ -427,7 +456,6 @@ public final class JobConcurrencyManagerTest { } private void updateDeviceConfig() throws Exception { - DeviceConfig.setProperties(mConfigBuilder.build()); mJobConcurrencyManager.updateConfigLocked(); } |