Merge "[AWARE] Test "instant failure" on Aware data-path requests"
This commit is contained in:
@@ -39,6 +39,7 @@ import android.net.wifi.aware.WifiAwareManager;
|
||||
import android.net.wifi.aware.WifiAwareSession;
|
||||
import android.os.Handler;
|
||||
import android.os.HandlerThread;
|
||||
import android.os.SystemClock;
|
||||
import android.test.AndroidTestCase;
|
||||
|
||||
import com.android.compatibility.common.util.SystemUtil;
|
||||
@@ -58,8 +59,8 @@ import java.util.concurrent.TimeUnit;
|
||||
public class SingleDeviceTest extends AndroidTestCase {
|
||||
private static final String TAG = "WifiAwareCtsTests";
|
||||
|
||||
// wait for Wi-Fi Aware to become available
|
||||
static private final int WAIT_FOR_AWARE_CHANGE_SECS = 10;
|
||||
// wait for Wi-Fi Aware state changes & network requests callbacks
|
||||
static private final int WAIT_FOR_AWARE_CHANGE_SECS = 10; // 10 seconds
|
||||
|
||||
private final Object mLock = new Object();
|
||||
private final HandlerThread mHandlerThread = new HandlerThread("SingleDeviceTest");
|
||||
@@ -704,7 +705,7 @@ public class SingleDeviceTest extends AndroidTestCase {
|
||||
|
||||
/**
|
||||
* Request an Aware data-path (open) as a Responder with an arbitrary peer MAC address. Validate
|
||||
* that times-out.
|
||||
* that receive an onUnavailable() callback.
|
||||
*/
|
||||
public void testDataPathOpenOutOfBandFail() {
|
||||
if (!TestUtils.shouldTestWifiAware(getContext())) {
|
||||
@@ -712,28 +713,32 @@ public class SingleDeviceTest extends AndroidTestCase {
|
||||
}
|
||||
MacAddress mac = MacAddress.fromString("00:01:02:03:04:05");
|
||||
|
||||
// 1. initialize Aware: only purpose is to make sure it is available for OOB data-path
|
||||
WifiAwareSession session = attachAndGetSession();
|
||||
|
||||
PublishConfig publishConfig = new PublishConfig.Builder().setServiceName(
|
||||
"ValidName").build();
|
||||
DiscoverySessionCallbackTest discoveryCb = new DiscoverySessionCallbackTest();
|
||||
NetworkCallbackTest networkCb = new NetworkCallbackTest();
|
||||
session.publish(publishConfig, discoveryCb, mHandler);
|
||||
assertTrue("Publish started",
|
||||
discoveryCb.waitForCallback(DiscoverySessionCallbackTest.ON_PUBLISH_STARTED));
|
||||
|
||||
// 1. request an AWARE network
|
||||
// 2. request an AWARE network
|
||||
NetworkCallbackTest networkCb = new NetworkCallbackTest();
|
||||
NetworkRequest nr = new NetworkRequest.Builder().addTransportType(
|
||||
NetworkCapabilities.TRANSPORT_WIFI_AWARE).setNetworkSpecifier(
|
||||
session.createNetworkSpecifierOpen(
|
||||
WifiAwareManager.WIFI_AWARE_DATA_PATH_ROLE_RESPONDER,
|
||||
WifiAwareManager.WIFI_AWARE_DATA_PATH_ROLE_INITIATOR,
|
||||
mac.toByteArray())).build();
|
||||
mConnectivityManager.requestNetwork(nr, networkCb, 2000);
|
||||
assertTrue("OnUnavailable received", networkCb.waitForOnUnavailable());
|
||||
mConnectivityManager.requestNetwork(nr, networkCb);
|
||||
assertTrue("OnUnavailable not received", networkCb.waitForOnUnavailable());
|
||||
|
||||
session.close();
|
||||
}
|
||||
|
||||
/**
|
||||
* Request an Aware data-path (encrypted) as a Responder with an arbitrary peer MAC address.
|
||||
* Validate that times-out.
|
||||
* Validate that receive an onUnavailable() callback.
|
||||
*/
|
||||
public void testDataPathPassphraseOutOfBandFail() {
|
||||
if (!TestUtils.shouldTestWifiAware(getContext())) {
|
||||
@@ -741,21 +746,25 @@ public class SingleDeviceTest extends AndroidTestCase {
|
||||
}
|
||||
MacAddress mac = MacAddress.fromString("00:01:02:03:04:05");
|
||||
|
||||
// 1. initialize Aware: only purpose is to make sure it is available for OOB data-path
|
||||
WifiAwareSession session = attachAndGetSession();
|
||||
|
||||
PublishConfig publishConfig = new PublishConfig.Builder().setServiceName(
|
||||
"ValidName").build();
|
||||
DiscoverySessionCallbackTest discoveryCb = new DiscoverySessionCallbackTest();
|
||||
NetworkCallbackTest networkCb = new NetworkCallbackTest();
|
||||
session.publish(publishConfig, discoveryCb, mHandler);
|
||||
assertTrue("Publish started",
|
||||
discoveryCb.waitForCallback(DiscoverySessionCallbackTest.ON_PUBLISH_STARTED));
|
||||
|
||||
// 1. request an AWARE network
|
||||
// 2. request an AWARE network
|
||||
NetworkCallbackTest networkCb = new NetworkCallbackTest();
|
||||
NetworkRequest nr = new NetworkRequest.Builder().addTransportType(
|
||||
NetworkCapabilities.TRANSPORT_WIFI_AWARE).setNetworkSpecifier(
|
||||
session.createNetworkSpecifierPassphrase(
|
||||
WifiAwareManager.WIFI_AWARE_DATA_PATH_ROLE_RESPONDER, mac.toByteArray(),
|
||||
WifiAwareManager.WIFI_AWARE_DATA_PATH_ROLE_INITIATOR, mac.toByteArray(),
|
||||
"abcdefghihk")).build();
|
||||
mConnectivityManager.requestNetwork(nr, networkCb, 2000);
|
||||
assertTrue("OnUnavailable received", networkCb.waitForOnUnavailable());
|
||||
mConnectivityManager.requestNetwork(nr, networkCb);
|
||||
assertTrue("OnUnavailable not received", networkCb.waitForOnUnavailable());
|
||||
|
||||
session.close();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user