Refactor PrimaryDexOptimizer to prepare for secondary dex compilation.
This CL extracts common dex compilation logic into a base class
DexOptimizer, and only leave primary-dex-specific logic in
PrimaryDexOptimizer.
This is a no-op change. It only moves code around.
Bug: 249984283
Test: atest ArtServiceTests
Ignore-AOSP-First: ART Services.
Change-Id: Ifca8ef1f8079afb4d8ce0826f0f9e4c21c3ce1d8
diff --git a/libartservice/service/javatests/com/android/server/art/DexOptHelperTest.java b/libartservice/service/javatests/com/android/server/art/DexOptHelperTest.java
index a001e74..b8faf09 100644
--- a/libartservice/service/javatests/com/android/server/art/DexOptHelperTest.java
+++ b/libartservice/service/javatests/com/android/server/art/DexOptHelperTest.java
@@ -90,7 +90,6 @@
@Before
public void setUp() throws Exception {
- lenient().when(mInjector.getPrimaryDexOptimizer()).thenReturn(mPrimaryDexOptimizer);
lenient().when(mInjector.getAppHibernationManager()).thenReturn(mAhm);
lenient().when(mInjector.getPowerManager()).thenReturn(mPowerManager);
@@ -105,14 +104,17 @@
mPkg = mPkgState.getAndroidPackage();
mCancellationSignal = new CancellationSignal();
+ lenient()
+ .when(mInjector.getPrimaryDexOptimizer(
+ same(mPkgState), same(mPkg), same(mParams), same(mCancellationSignal)))
+ .thenReturn(mPrimaryDexOptimizer);
+
mDexOptHelper = new DexOptHelper(mInjector);
}
@Test
public void testDexopt() throws Exception {
- when(mPrimaryDexOptimizer.dexopt(
- same(mPkgState), same(mPkg), same(mParams), same(mCancellationSignal)))
- .thenReturn(mPrimaryResults);
+ when(mPrimaryDexOptimizer.dexopt()).thenReturn(mPrimaryResults);
OptimizeResult result = mDexOptHelper.dexopt(
mock(PackageManagerLocal.FilteredSnapshot.class), mPkgState, mPkg, mParams,
@@ -130,7 +132,7 @@
InOrder inOrder = inOrder(mPrimaryDexOptimizer, mWakeLock);
inOrder.verify(mWakeLock).acquire(anyLong());
- inOrder.verify(mPrimaryDexOptimizer).dexopt(any(), any(), any(), any());
+ inOrder.verify(mPrimaryDexOptimizer).dexopt();
inOrder.verify(mWakeLock).release();
}
@@ -165,9 +167,7 @@
lenient().when(mAhm.isHibernatingGlobally(PKG_NAME)).thenReturn(true);
lenient().when(mAhm.isOatArtifactDeletionEnabled()).thenReturn(false);
- when(mPrimaryDexOptimizer.dexopt(
- same(mPkgState), same(mPkg), same(mParams), same(mCancellationSignal)))
- .thenReturn(mPrimaryResults);
+ when(mPrimaryDexOptimizer.dexopt()).thenReturn(mPrimaryResults);
OptimizeResult result = mDexOptHelper.dexopt(
mock(PackageManagerLocal.FilteredSnapshot.class), mPkgState, mPkg, mParams,
@@ -179,9 +179,7 @@
@Test
public void testDexoptAlwaysReleasesWakeLock() throws Exception {
- when(mPrimaryDexOptimizer.dexopt(
- same(mPkgState), same(mPkg), same(mParams), same(mCancellationSignal)))
- .thenThrow(IllegalStateException.class);
+ when(mPrimaryDexOptimizer.dexopt()).thenThrow(IllegalStateException.class);
try {
mDexOptHelper.dexopt(mock(PackageManagerLocal.FilteredSnapshot.class), mPkgState, mPkg,