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 7d9189ff33..2e5306df89 100644 --- a/tests/cts/net/src/android/net/http/cts/ApacheHttpClientTest.java +++ b/tests/cts/net/src/android/net/http/cts/ApacheHttpClientTest.java @@ -21,56 +21,27 @@ import org.apache.http.client.HttpClient; import org.apache.http.client.methods.HttpGet; import org.apache.http.impl.client.DefaultHttpClient; -import android.content.BroadcastReceiver; -import android.content.Context; -import android.content.Intent; -import android.content.IntentFilter; -import android.content.pm.PackageManager; -import android.net.ConnectivityManager; -import android.net.NetworkInfo; -import android.net.NetworkInfo.State; import android.net.Uri; -import android.net.wifi.WifiManager; import android.test.AndroidTestCase; -import android.util.Log; import android.webkit.cts.CtsTestServer; import java.io.IOException; import java.io.InputStream; import java.util.ArrayList; import java.util.List; -import java.util.concurrent.CountDownLatch; -import java.util.concurrent.TimeUnit; public class ApacheHttpClientTest extends AndroidTestCase { - private static final String TAG = ApacheHttpClientTest.class.getSimpleName(); - private static final int NUM_DOWNLOADS = 20; private static final int SMALL_DOWNLOAD_SIZE = 100 * 1024; private CtsTestServer mWebServer; - private WifiManager mWifiManager; - - private ConnectivityManager mConnectivityManager; - - private boolean mHasTelephony; - - private boolean mHasWifi; - @Override protected void setUp() throws Exception { super.setUp(); mWebServer = new CtsTestServer(mContext); - mWifiManager = (WifiManager) mContext.getSystemService(Context.WIFI_SERVICE); - mConnectivityManager = (ConnectivityManager) - mContext.getSystemService(Context.CONNECTIVITY_SERVICE); - - PackageManager packageManager = mContext.getPackageManager(); - mHasTelephony = packageManager.hasSystemFeature(PackageManager.FEATURE_TELEPHONY); - mHasWifi = packageManager.hasSystemFeature(PackageManager.FEATURE_WIFI); } @Override @@ -79,25 +50,8 @@ public class ApacheHttpClientTest extends AndroidTestCase { mWebServer.shutdown(); } - public void testExecute_withMobile() throws Exception { - if (mHasTelephony) { - disconnectWifiToConnectToMobile(); - } - + public void testExecute() throws Exception { downloadMultipleFiles(); - - if (mHasWifi) { - connectToWifi(); - } - } - - public void testExecute_withWifi() throws Exception { - if (mHasWifi) { - if (!mWifiManager.isWifiEnabled()) { - connectToWifi(); - } - downloadMultipleFiles(); - } } private void downloadMultipleFiles() throws ClientProtocolException, IOException { @@ -134,77 +88,6 @@ public class ApacheHttpClientTest extends AndroidTestCase { numBytes += bytesRead; } } - assertEquals(message, SMALL_DOWNLOAD_SIZE, numBytes); - } - - private void connectToWifi() throws InterruptedException { - if (!mWifiManager.isWifiEnabled()) { - ConnectivityActionReceiver receiver = - new ConnectivityActionReceiver(ConnectivityManager.TYPE_WIFI, State.CONNECTED); - IntentFilter filter = new IntentFilter(); - filter.addAction(ConnectivityManager.CONNECTIVITY_ACTION); - mContext.registerReceiver(receiver, filter); - - assertTrue(mWifiManager.setWifiEnabled(true)); - assertTrue("Wifi must be configured to connect to an access point for this test.", - receiver.waitForStateChange()); - - mContext.unregisterReceiver(receiver); - } - } - - private void disconnectWifiToConnectToMobile() throws InterruptedException { - if (mHasWifi && mWifiManager.isWifiEnabled()) { - ConnectivityActionReceiver connectMobileReceiver = - new ConnectivityActionReceiver(ConnectivityManager.TYPE_MOBILE, - State.CONNECTED); - ConnectivityActionReceiver disconnectWifiReceiver = - new ConnectivityActionReceiver(ConnectivityManager.TYPE_WIFI, - State.DISCONNECTED); - IntentFilter filter = new IntentFilter(ConnectivityManager.CONNECTIVITY_ACTION); - mContext.registerReceiver(connectMobileReceiver, filter); - mContext.registerReceiver(disconnectWifiReceiver, filter); - - assertTrue(mWifiManager.setWifiEnabled(false)); - assertTrue(disconnectWifiReceiver.waitForStateChange()); - assertTrue(connectMobileReceiver.waitForStateChange()); - - mContext.unregisterReceiver(connectMobileReceiver); - mContext.unregisterReceiver(disconnectWifiReceiver); - } - } - - /** Receiver that captures the last connectivity change's network type and state. */ - private class ConnectivityActionReceiver extends BroadcastReceiver { - - private final CountDownLatch mReceiveLatch = new CountDownLatch(1); - - private final int mNetworkType; - - private final State mExpectedState; - - ConnectivityActionReceiver(int networkType, State expectedState) { - mNetworkType = networkType; - mExpectedState = expectedState; - } - - public void onReceive(Context context, Intent intent) { - NetworkInfo networkInfo = intent.getExtras() - .getParcelable(ConnectivityManager.EXTRA_NETWORK_INFO); - int networkType = networkInfo.getType(); - State networkState = networkInfo.getState(); - Log.i(TAG, "Network type: " + networkType + " State: " + networkInfo.getState()); - if (networkType == mNetworkType && networkInfo.getState() == mExpectedState) { - mReceiveLatch.countDown(); - } - } - - public boolean waitForStateChange() throws InterruptedException { - return mReceiveLatch.await(30, TimeUnit.SECONDS) || hasExpectedState(); - } - - private boolean hasExpectedState() { - return mExpectedState == mConnectivityManager.getNetworkInfo(mNetworkType).getState(); - } + assertEquals(message, expectedNumBytes, numBytes); } }