Add assertion message to assertions for testExecute_withMobile.

Some partner test devices without a SIM Card or with no signal, thus
without mobile network data connection.

Added a message to check signal and SIM card and rerun the test.

Also added a verification that the network type is supported in the
event of a Connectivity Action's timeout. Unsuported network type could
be caused by a network stack crash.

Bug: 28207677
Change-Id: Ibca50359df7d5fb8371f4f4037fc81f029f48b30
diff --git a/tests/cts/net/src/android/net/http/cts/ApacheHttpClientTest.java b/tests/cts/net/src/android/net/http/cts/ApacheHttpClientTest.java
index 7d9189f..91b65b6 100644
--- a/tests/cts/net/src/android/net/http/cts/ApacheHttpClientTest.java
+++ b/tests/cts/net/src/android/net/http/cts/ApacheHttpClientTest.java
@@ -146,7 +146,8 @@
             mContext.registerReceiver(receiver, filter);
 
             assertTrue(mWifiManager.setWifiEnabled(true));
-            assertTrue("Wifi must be configured to connect to an access point for this test.",
+            assertTrue(
+                    "[RERUN] Wifi must be configured to connect to an access point for this test.",
                     receiver.waitForStateChange());
 
             mContext.unregisterReceiver(receiver);
@@ -165,9 +166,11 @@
             mContext.registerReceiver(connectMobileReceiver, filter);
             mContext.registerReceiver(disconnectWifiReceiver, filter);
 
-            assertTrue(mWifiManager.setWifiEnabled(false));
-            assertTrue(disconnectWifiReceiver.waitForStateChange());
-            assertTrue(connectMobileReceiver.waitForStateChange());
+            assertTrue("Wifi did not disconnect.", mWifiManager.setWifiEnabled(false));
+            assertTrue("Timeout waiting for wifi to disconnect.",
+                    disconnectWifiReceiver.waitForStateChange());
+            assertTrue("[RERUN] Timeout waiting for mobile network. Check signal and SIM.",
+                    connectMobileReceiver.waitForStateChange());
 
             mContext.unregisterReceiver(connectMobileReceiver);
             mContext.unregisterReceiver(disconnectWifiReceiver);
@@ -204,7 +207,10 @@
         }
 
         private boolean hasExpectedState() {
-            return mExpectedState == mConnectivityManager.getNetworkInfo(mNetworkType).getState();
+            NetworkInfo network = mConnectivityManager.getNetworkInfo(mNetworkType);
+            assertNotNull("Network type should be supported but it is not. Type: " + mNetworkType,
+                    network);
+            return mExpectedState == network.getState();
         }
     }
 }