Check whether multi-user is supported before running AppCloningHostTest

Bug: 230817189
Test: atest CtsAppCloningHostTest
Change-Id: Ie98b45a07ec8144bfd7a16ec854a32f6e25623eb
diff --git a/hostsidetests/appcloning/hostside/src/com/android/cts/appcloning/AppCloningBaseHostTest.java b/hostsidetests/appcloning/hostside/src/com/android/cts/appcloning/AppCloningBaseHostTest.java
index f1777fc..7fe6d64 100644
--- a/hostsidetests/appcloning/hostside/src/com/android/cts/appcloning/AppCloningBaseHostTest.java
+++ b/hostsidetests/appcloning/hostside/src/com/android/cts/appcloning/AppCloningBaseHostTest.java
@@ -59,6 +59,7 @@
     public void baseHostSetup() throws Exception {
         setDevice();
 
+        assumeTrue("Device doesn't support multiple users", supportsMultipleUsers());
         assumeFalse("Device is in headless system user mode", isHeadlessSystemUserMode());
         assumeTrue(isAtLeastS());
         assumeFalse("Device uses sdcardfs", usesSdcardFs());
@@ -67,7 +68,9 @@
     }
 
     public void baseHostTeardown() throws Exception {
-        if (isHeadlessSystemUserMode() || !isAtLeastS() || usesSdcardFs()) return;
+        if (!supportsMultipleUsers() || isHeadlessSystemUserMode() || !isAtLeastS()
+                || usesSdcardFs())
+            return;
 
         // remove the clone user
         executeShellCommand("pm remove-user %s", mCloneUserId);
diff --git a/hostsidetests/appcloning/hostside/src/com/android/cts/appcloning/BaseHostTestCase.java b/hostsidetests/appcloning/hostside/src/com/android/cts/appcloning/BaseHostTestCase.java
index fdea67b..cc6bac0 100644
--- a/hostsidetests/appcloning/hostside/src/com/android/cts/appcloning/BaseHostTestCase.java
+++ b/hostsidetests/appcloning/hostside/src/com/android/cts/appcloning/BaseHostTestCase.java
@@ -56,6 +56,10 @@
         return "true".equalsIgnoreCase(result);
     }
 
+    protected boolean supportsMultipleUsers() throws DeviceNotAvailableException {
+        return mDevice.getMaxNumberOfUsersSupported() > 1;
+    }
+
     protected boolean isAtLeastS() throws DeviceNotAvailableException {
         DeviceSdkLevel deviceSdkLevel = new DeviceSdkLevel(mDevice);
         return deviceSdkLevel.isDeviceAtLeastS();