Skip WifiSliceTest and SettingsPanelTest on ATV

TvSettings does not support the provider android.settings.slices.
TvSettings does not support handle these actions:
android.settings.panel.action.NFC
android.settings.panel.action.WIFI
android.settings.panel.action.VOLUME
android.settings.panel.action.INTERNET_CONNECTIVITY

Test: run cts -m CtsProviderTestCases -t
android.provider.cts.WifiSliceTest#wifiSlice_grantedPermissionToDefaultAssistant
android.provider.cts.WifiSliceTest#wifiSlice_hasCorrectUri
android.provider.cts.SettingsPanelTest#nfcPanel_seeMoreButton_launchesIntoSettings
android.provider.cts.SettingsPanelTest#nfcPanel_correctPackage
android.provider.cts.SettingsPanelTest#nfcPanel_correctTitle
android.provider.cts.SettingsPanelTest#nfcPanel_doneClosesPane
android.provider.cts.SettingsPanelTest#wifiPanel_correctPackage
android.provider.cts.SettingsPanelTest#wifiPanel_doneClosesPanel
android.provider.cts.SettingsPanelTest#wifiPanel_seeMoreButton_launchesIntoSettings
android.provider.cts.SettingsPanelTest#internetPanel_correctPackage
android.provider.cts.SettingsPanelTest#internetPanel_doneClosesPanel
android.provider.cts.SettingsPanelTest#internetPanel_seeMoreButton_launchesIntoSettings
android.provider.cts.SettingsPanelTest#volumePanel_correctPackage
android.provider.cts.SettingsPanelTest#volumePanel_doneClosesPanel
android.provider.cts.SettingsPanelTest#volumePanel_seeMoreButton_launchesIntoSettings

Bug: 141352581

Change-Id: Ib9af86c61a961f9741a36e6731d51539396faa09
diff --git a/tests/tests/provider/src/android/provider/cts/SettingsPanelTest.java b/tests/tests/provider/src/android/provider/cts/SettingsPanelTest.java
index e80e393..15a0a2d 100644
--- a/tests/tests/provider/src/android/provider/cts/SettingsPanelTest.java
+++ b/tests/tests/provider/src/android/provider/cts/SettingsPanelTest.java
@@ -18,7 +18,7 @@
 
 import static com.google.common.truth.Truth.assertThat;
 import static org.junit.Assume.assumeTrue;
-
+import static org.junit.Assume.assumeFalse;
 import android.content.Context;
 import android.content.Intent;
 import android.content.pm.PackageManager;
@@ -260,22 +260,33 @@
     }
 
     private void launchVolumePanel() {
+        assumeFalse("Skipping test: TV does not support handle ACTION_VOLUME", isTv());
         launchPanel(Settings.Panel.ACTION_VOLUME);
     }
 
     private void launchInternetPanel() {
+        assumeFalse("Skipping test: TV does not support handle ACTION_INTERNET_CONNECTIVITY",
+                isTv());
         launchPanel(Settings.Panel.ACTION_INTERNET_CONNECTIVITY);
     }
 
     private void launchNfcPanel() {
+        assumeFalse("Skipping test: TV does not support handle ACTION_NFC", isTv());
         assumeTrue("device does not support NFC", RequiredServiceRule.hasService("nfc"));
         launchPanel(Settings.Panel.ACTION_NFC);
     }
 
     private void launchWifiPanel() {
+        assumeFalse("Skipping test: TV does not support handle ACTION_WIFI", isTv());
         launchPanel(Settings.Panel.ACTION_WIFI);
     }
 
+    private boolean isTv() {
+        PackageManager packageManager = mContext.getPackageManager();
+        return packageManager.hasSystemFeature(PackageManager.FEATURE_TELEVISION)
+                && packageManager.hasSystemFeature(PackageManager.FEATURE_LEANBACK);
+    }
+
     private void launchPanel(String action) {
         // Start from the home screen
         mDevice.pressHome();
diff --git a/tests/tests/provider/src/android/provider/cts/WifiSliceTest.java b/tests/tests/provider/src/android/provider/cts/WifiSliceTest.java
index 873a90f..04b62e7 100644
--- a/tests/tests/provider/src/android/provider/cts/WifiSliceTest.java
+++ b/tests/tests/provider/src/android/provider/cts/WifiSliceTest.java
@@ -19,7 +19,7 @@
 import static android.content.pm.PackageManager.PERMISSION_GRANTED;
 
 import static com.google.common.truth.Truth.assertThat;
-
+import static org.junit.Assume.assumeFalse;
 import android.app.slice.Slice;
 import android.app.slice.SliceManager;
 import android.content.Context;
@@ -67,6 +67,7 @@
 
   @Before
   public void setUp() throws Exception {
+    assumeFalse("Skipping test: TV does not support provider android.settings.slices", isTv());
     mWifiSlice = mSliceManager.bindSlice(WIFI_SLICE_URI, Collections.emptySet());
   }
 
@@ -133,6 +134,12 @@
     }
   }
 
+  private boolean isTv() {
+    PackageManager pm = mContext.getPackageManager();
+    return pm.hasSystemFeature(PackageManager.FEATURE_TELEVISION)
+            && pm.hasSystemFeature(PackageManager.FEATURE_LEANBACK);
+  }
+
   private boolean isWifiEnabled() {
     final WifiManager wifiManager = mContext.getSystemService(WifiManager.class);
     return wifiManager.getWifiState() == WifiManager.WIFI_STATE_ENABLED