Fix ClearKeySystemTest fails Wifi connection test in emulator.

CTS does not mandate wifi connection. Test for network (wifi and data)
connectivity instead.

Detail
======
Add ConnectionStatus class that implements the IConnectionStatus class.
ConnectionStatus tests if there is network connectivity through wifi or
mobile data.

Also remove methods that are unique to wifi status.

Test: ANDROID_BUILD_TOP= ./android-cts/tools/cts-tradefed run cts -m CtsMediaTestCases --test android.media.cts.ClearKeySystemTest#testClearKeyPlaybackCenc

  Test with wifi enable, then test with wifi disabled.

bug: 32505267
Change-Id: I41a744e1484d2e6605f3fba868caa6aacdb07443
diff --git a/tests/tests/media/src/android/media/cts/ClearKeySystemTest.java b/tests/tests/media/src/android/media/cts/ClearKeySystemTest.java
index 7d5742e..69f3ee8 100644
--- a/tests/tests/media/src/android/media/cts/ClearKeySystemTest.java
+++ b/tests/tests/media/src/android/media/cts/ClearKeySystemTest.java
@@ -344,24 +344,25 @@
             return;
         }
 
-        IConnectionStatus wifiStatus = new WifiStatus(mContext);
-        if (!wifiStatus.isEnabled()) {
-            throw new Error("Wifi is not enabled, please enable Wifi to run tests.");
+        IConnectionStatus connectionStatus = new ConnectionStatus(mContext);
+        if (!connectionStatus.isAvailable()) {
+            throw new Error("Network is not available, reason: " +
+                    connectionStatus.getNotConnectedReason());
         }
-        // If Wifi is not connected, recheck the status a few times.
+
+        // If device is not online, recheck the status a few times.
         int retries = 0;
-        while (!wifiStatus.isConnected()) {
+        while (!connectionStatus.isConnected()) {
             if (retries++ >= CONNECTION_RETRIES) {
-                wifiStatus.printConnectionInfo();
-                throw new Error("Wifi is not connected, reason: " +
-                        wifiStatus.getNotConnectedReason());
+                throw new Error("Device is not online, reason: " +
+                        connectionStatus.getNotConnectedReason());
             }
             try {
                 Thread.sleep(100);
             } catch (InterruptedException e) {
             }
         }
-        wifiStatus.testConnection(videoUrl);
+        connectionStatus.testConnection(videoUrl);
 
         mSessionId = openSession(drm);
         mMediaCodecPlayer = new MediaCodecClearKeyPlayer(
diff --git a/tests/tests/media/src/android/media/cts/WifiStatus.java b/tests/tests/media/src/android/media/cts/ConnectionStatus.java
similarity index 77%
rename from tests/tests/media/src/android/media/cts/WifiStatus.java
rename to tests/tests/media/src/android/media/cts/ConnectionStatus.java
index c2577f1..37fc75e 100644
--- a/tests/tests/media/src/android/media/cts/WifiStatus.java
+++ b/tests/tests/media/src/android/media/cts/ConnectionStatus.java
@@ -20,8 +20,6 @@
 import android.net.ConnectivityManager;
 import android.net.NetworkInfo;
 import android.net.Uri;
-import android.net.wifi.WifiInfo;
-import android.net.wifi.WifiManager;
 import android.util.Log;
 
 import java.io.BufferedReader;
@@ -32,19 +30,17 @@
 
 /**
  * A class that implements IConnectionStatus interface
- * to report and test Wifi connection.
+ * to report and test connection status.
  */
-public class WifiStatus implements IConnectionStatus {
+public class ConnectionStatus implements IConnectionStatus {
 
-    private static final String TAG = "WifiStatus";
+    private static final String TAG = "ConnectionStatus";
 
     private ConnectivityManager mConnectivityManager;
-    private WifiManager mWifiManager;
 
-    public WifiStatus(Context context) {
+    public ConnectionStatus(Context context) {
         mConnectivityManager =
                 (ConnectivityManager)context.getSystemService(Context.CONNECTIVITY_SERVICE);
-        mWifiManager = (WifiManager)context.getSystemService(Context.WIFI_SERVICE);
     }
 
     public String getNotConnectedReason() {
@@ -52,7 +48,7 @@
         if (networkInfo != null) {
             return networkInfo.getReason();
         } else {
-            return "Cannot get network info";
+            return "Network info is not available.";
         }
     }
 
@@ -66,22 +62,6 @@
         return (networkInfo != null) && networkInfo.isConnected();
     }
 
-    public boolean isEnabled() {
-        return mWifiManager.isWifiEnabled();
-    }
-
-    public void printConnectionInfo() {
-        WifiInfo wifiInfo = mWifiManager.getConnectionInfo();
-        if (wifiInfo == null) {
-          throw new Error("Fail to get Wifi connection info");
-        }
-
-        Log.d(TAG, "ssid=" + wifiInfo.getSSID());
-        Log.d(TAG, "frequency=" + wifiInfo.getFrequency() + " " + WifiInfo.FREQUENCY_UNITS);
-        Log.d(TAG, "rssi=" + wifiInfo.getRssi() + " dBm");
-        Log.d(TAG, "link speed=" + wifiInfo.getLinkSpeed() + " " + WifiInfo.LINK_SPEED_UNITS);
-    }
-
     /**
      * Print lines.
      *
@@ -152,14 +132,6 @@
     }
 
     public void testConnection(Uri uri) {
-        final String GOOG = "www.google.com";
-
-        if (pingTest(GOOG)) {
-            Log.d(TAG, "Successfully pinged " + GOOG);
-        } else {
-            Log.e(TAG, "Failed to ping " + GOOG);
-        }
-
         if (pingTest(uri.getHost())) {
             Log.d(TAG, "Successfully pinged " + uri.getHost());
         } else {
diff --git a/tests/tests/media/src/android/media/cts/IConnectionStatus.java b/tests/tests/media/src/android/media/cts/IConnectionStatus.java
index 39e2781..17d5ff7 100644
--- a/tests/tests/media/src/android/media/cts/IConnectionStatus.java
+++ b/tests/tests/media/src/android/media/cts/IConnectionStatus.java
@@ -29,10 +29,6 @@
 
     public boolean isConnected();
 
-    public boolean isEnabled();
-
-    public void printConnectionInfo();
-
     public void testConnection(Uri uri);
 }