Skip legacy BackgroundDexOptService unit tests when ART Service is in
use.

Even just instantiating BackgroundDexOptService will result in a
LegacyDexoptDisabledException then.

Test: atest com.android.server.pm.BackgroundDexOptServiceUnitTest
  with dalvik.vm.useartservice=true
Bug: 274098825
Change-Id: I7359ad2887ef2d179f12404de69298b90d9e6636
diff --git a/services/core/java/com/android/server/pm/Installer.java b/services/core/java/com/android/server/pm/Installer.java
index 0d417e4..c464253 100644
--- a/services/core/java/com/android/server/pm/Installer.java
+++ b/services/core/java/com/android/server/pm/Installer.java
@@ -1177,7 +1177,7 @@
         // TODO(b/260124949): Remove the legacy dexopt code paths, i.e. this exception and all code
         // that may throw it.
         public LegacyDexoptDisabledException() {
-            super("Invalid call to legacy dexopt installd method while ART Service is in use.");
+            super("Invalid call to legacy dexopt method while ART Service is in use.");
         }
     }
 
diff --git a/services/tests/mockingservicestests/src/com/android/server/pm/BackgroundDexOptServiceUnitTest.java b/services/tests/mockingservicestests/src/com/android/server/pm/BackgroundDexOptServiceUnitTest.java
index d5aa7fe..9a7ee4d 100644
--- a/services/tests/mockingservicestests/src/com/android/server/pm/BackgroundDexOptServiceUnitTest.java
+++ b/services/tests/mockingservicestests/src/com/android/server/pm/BackgroundDexOptServiceUnitTest.java
@@ -47,6 +47,7 @@
 import android.os.HandlerThread;
 import android.os.PowerManager;
 import android.os.Process;
+import android.os.SystemProperties;
 import android.util.Log;
 
 import com.android.internal.util.IndentingPrintWriter;
@@ -56,6 +57,7 @@
 import com.android.server.pm.dex.DexoptOptions;
 
 import org.junit.After;
+import org.junit.Assume;
 import org.junit.Before;
 import org.junit.Test;
 import org.junit.runner.RunWith;
@@ -126,6 +128,10 @@
 
     @Before
     public void setUp() throws Exception {
+        // These tests are only applicable to the legacy BackgroundDexOptService and cannot be run
+        // when ART Service is enabled.
+        Assume.assumeFalse(SystemProperties.getBoolean("dalvik.vm.useartservice", false));
+
         when(mInjector.getCallingUid()).thenReturn(Process.FIRST_APPLICATION_UID);
         when(mInjector.getContext()).thenReturn(mContext);
         when(mInjector.getDexOptHelper()).thenReturn(mDexOptHelper);