Merge "Use hasSystemFeature(String) overload for RoSystemFeatures fallback" into main
diff --git a/tools/systemfeatures/src/com/android/systemfeatures/SystemFeaturesGenerator.kt b/tools/systemfeatures/src/com/android/systemfeatures/SystemFeaturesGenerator.kt
index ea660b0..22d364e 100644
--- a/tools/systemfeatures/src/com/android/systemfeatures/SystemFeaturesGenerator.kt
+++ b/tools/systemfeatures/src/com/android/systemfeatures/SystemFeaturesGenerator.kt
@@ -263,7 +263,7 @@
                 .returns(Boolean::class.java)
                 .addParameter(CONTEXT_CLASS, "context")
                 .addParameter(String::class.java, "featureName")
-                .addStatement("return context.getPackageManager().hasSystemFeature(featureName, 0)")
+                .addStatement("return context.getPackageManager().hasSystemFeature(featureName)")
                 .build()
         )
     }
diff --git a/tools/systemfeatures/tests/golden/RoFeatures.java.gen b/tools/systemfeatures/tests/golden/RoFeatures.java.gen
index ee97b26..730dacb 100644
--- a/tools/systemfeatures/tests/golden/RoFeatures.java.gen
+++ b/tools/systemfeatures/tests/golden/RoFeatures.java.gen
@@ -70,7 +70,7 @@
     }
 
     private static boolean hasFeatureFallback(Context context, String featureName) {
-        return context.getPackageManager().hasSystemFeature(featureName, 0);
+        return context.getPackageManager().hasSystemFeature(featureName);
     }
 
     /**
diff --git a/tools/systemfeatures/tests/golden/RoNoFeatures.java.gen b/tools/systemfeatures/tests/golden/RoNoFeatures.java.gen
index 40c7db7..fe268c7 100644
--- a/tools/systemfeatures/tests/golden/RoNoFeatures.java.gen
+++ b/tools/systemfeatures/tests/golden/RoNoFeatures.java.gen
@@ -25,7 +25,7 @@
     }
 
     private static boolean hasFeatureFallback(Context context, String featureName) {
-        return context.getPackageManager().hasSystemFeature(featureName, 0);
+        return context.getPackageManager().hasSystemFeature(featureName);
     }
 
     /**
diff --git a/tools/systemfeatures/tests/golden/RwFeatures.java.gen b/tools/systemfeatures/tests/golden/RwFeatures.java.gen
index 7bf8961..bcf978d 100644
--- a/tools/systemfeatures/tests/golden/RwFeatures.java.gen
+++ b/tools/systemfeatures/tests/golden/RwFeatures.java.gen
@@ -55,7 +55,7 @@
     }
 
     private static boolean hasFeatureFallback(Context context, String featureName) {
-        return context.getPackageManager().hasSystemFeature(featureName, 0);
+        return context.getPackageManager().hasSystemFeature(featureName);
     }
 
     /**
diff --git a/tools/systemfeatures/tests/golden/RwNoFeatures.java.gen b/tools/systemfeatures/tests/golden/RwNoFeatures.java.gen
index eb7ec63..7bad5a2 100644
--- a/tools/systemfeatures/tests/golden/RwNoFeatures.java.gen
+++ b/tools/systemfeatures/tests/golden/RwNoFeatures.java.gen
@@ -14,7 +14,7 @@
  */
 public final class RwNoFeatures {
     private static boolean hasFeatureFallback(Context context, String featureName) {
-        return context.getPackageManager().hasSystemFeature(featureName, 0);
+        return context.getPackageManager().hasSystemFeature(featureName);
     }
 
     /**
diff --git a/tools/systemfeatures/tests/src/SystemFeaturesGeneratorTest.java b/tools/systemfeatures/tests/src/SystemFeaturesGeneratorTest.java
index ed3f5c9..491b55e 100644
--- a/tools/systemfeatures/tests/src/SystemFeaturesGeneratorTest.java
+++ b/tools/systemfeatures/tests/src/SystemFeaturesGeneratorTest.java
@@ -76,28 +76,28 @@
 
         // Also ensure we fall back to the PackageManager for feature APIs without an accompanying
         // versioned feature definition.
-        when(mPackageManager.hasSystemFeature(PackageManager.FEATURE_WATCH, 0)).thenReturn(true);
+        when(mPackageManager.hasSystemFeature(PackageManager.FEATURE_WATCH)).thenReturn(true);
         assertThat(RwFeatures.hasFeatureWatch(mContext)).isTrue();
-        when(mPackageManager.hasSystemFeature(PackageManager.FEATURE_WATCH, 0)).thenReturn(false);
+        when(mPackageManager.hasSystemFeature(PackageManager.FEATURE_WATCH)).thenReturn(false);
         assertThat(RwFeatures.hasFeatureWatch(mContext)).isFalse();
     }
 
     @Test
     public void testReadonlyDisabledWithDefinedFeatures() {
         // Always fall back to the PackageManager for defined, explicit features queries.
-        when(mPackageManager.hasSystemFeature(PackageManager.FEATURE_WATCH, 0)).thenReturn(true);
+        when(mPackageManager.hasSystemFeature(PackageManager.FEATURE_WATCH)).thenReturn(true);
         assertThat(RwFeatures.hasFeatureWatch(mContext)).isTrue();
 
-        when(mPackageManager.hasSystemFeature(PackageManager.FEATURE_WATCH, 0)).thenReturn(false);
+        when(mPackageManager.hasSystemFeature(PackageManager.FEATURE_WATCH)).thenReturn(false);
         assertThat(RwFeatures.hasFeatureWatch(mContext)).isFalse();
 
-        when(mPackageManager.hasSystemFeature(PackageManager.FEATURE_WIFI, 0)).thenReturn(true);
+        when(mPackageManager.hasSystemFeature(PackageManager.FEATURE_WIFI)).thenReturn(true);
         assertThat(RwFeatures.hasFeatureWifi(mContext)).isTrue();
 
-        when(mPackageManager.hasSystemFeature(PackageManager.FEATURE_VULKAN, 0)).thenReturn(false);
+        when(mPackageManager.hasSystemFeature(PackageManager.FEATURE_VULKAN)).thenReturn(false);
         assertThat(RwFeatures.hasFeatureVulkan(mContext)).isFalse();
 
-        when(mPackageManager.hasSystemFeature(PackageManager.FEATURE_AUTO, 0)).thenReturn(false);
+        when(mPackageManager.hasSystemFeature(PackageManager.FEATURE_AUTO)).thenReturn(false);
         assertThat(RwFeatures.hasFeatureAuto(mContext)).isFalse();
 
         // For defined and undefined features, conditional queries should report null (unknown).
@@ -139,9 +139,9 @@
         assertThat(RoFeatures.maybeHasFeature(PackageManager.FEATURE_VULKAN, 100)).isFalse();
 
         // VERSION=
-        when(mPackageManager.hasSystemFeature(PackageManager.FEATURE_AUTO, 0)).thenReturn(false);
+        when(mPackageManager.hasSystemFeature(PackageManager.FEATURE_AUTO)).thenReturn(false);
         assertThat(RoFeatures.hasFeatureAuto(mContext)).isFalse();
-        when(mPackageManager.hasSystemFeature(PackageManager.FEATURE_AUTO, 0)).thenReturn(true);
+        when(mPackageManager.hasSystemFeature(PackageManager.FEATURE_AUTO)).thenReturn(true);
         assertThat(RoFeatures.hasFeatureAuto(mContext)).isTrue();
         assertThat(RoFeatures.maybeHasFeature(PackageManager.FEATURE_AUTO, -1)).isNull();
         assertThat(RoFeatures.maybeHasFeature(PackageManager.FEATURE_AUTO, 0)).isNull();
@@ -149,9 +149,9 @@
 
         // For feature APIs without an associated feature definition, conditional queries should
         // report null, and explicit queries should report runtime-defined versions.
-        when(mPackageManager.hasSystemFeature(PackageManager.FEATURE_PC, 0)).thenReturn(true);
+        when(mPackageManager.hasSystemFeature(PackageManager.FEATURE_PC)).thenReturn(true);
         assertThat(RoFeatures.hasFeaturePc(mContext)).isTrue();
-        when(mPackageManager.hasSystemFeature(PackageManager.FEATURE_PC, 0)).thenReturn(false);
+        when(mPackageManager.hasSystemFeature(PackageManager.FEATURE_PC)).thenReturn(false);
         assertThat(RoFeatures.hasFeaturePc(mContext)).isFalse();
         assertThat(RoFeatures.maybeHasFeature(PackageManager.FEATURE_PC, -1)).isNull();
         assertThat(RoFeatures.maybeHasFeature(PackageManager.FEATURE_PC, 0)).isNull();