Merge "Add skip464xlat test in Nat464XlatTest" am: aef8fe0d47

am: 0ecbb97b4a

Change-Id: Iee577b9b65ca9b576da966d6ca2468da9aa749ef
This commit is contained in:
soma, kawata
2018-11-08 05:10:10 -08:00
committed by android-build-merger
3 changed files with 18 additions and 4 deletions

View File

@@ -94,7 +94,7 @@ public class Nat464Xlat extends BaseNetworkObserver {
final boolean hasIPv4Address = final boolean hasIPv4Address =
(nai.linkProperties != null) && nai.linkProperties.hasIPv4Address(); (nai.linkProperties != null) && nai.linkProperties.hasIPv4Address();
final boolean skip464xlat = final boolean skip464xlat =
(nai.networkMisc != null) && nai.networkMisc.skip464xlat; (nai.netMisc() != null) && nai.netMisc().skip464xlat;
return supported && connected && !hasIPv4Address && !skip464xlat; return supported && connected && !hasIPv4Address && !skip464xlat;
} }

View File

@@ -266,6 +266,10 @@ public class NetworkAgentInfo implements Comparable<NetworkAgentInfo> {
return mConnService; return mConnService;
} }
public NetworkMisc netMisc() {
return networkMisc;
}
public Handler handler() { public Handler handler() {
return mHandler; return mHandler;
} }

View File

@@ -31,6 +31,7 @@ import android.net.InterfaceConfiguration;
import android.net.LinkAddress; import android.net.LinkAddress;
import android.net.LinkProperties; import android.net.LinkProperties;
import android.net.NetworkInfo; import android.net.NetworkInfo;
import android.net.NetworkMisc;
import android.os.Handler; import android.os.Handler;
import android.os.INetworkManagementService; import android.os.INetworkManagementService;
import android.os.test.TestLooper; import android.os.test.TestLooper;
@@ -55,6 +56,7 @@ public class Nat464XlatTest {
static final LinkAddress ADDR = new LinkAddress("192.0.2.5/29"); static final LinkAddress ADDR = new LinkAddress("192.0.2.5/29");
@Mock ConnectivityService mConnectivity; @Mock ConnectivityService mConnectivity;
@Mock NetworkMisc mMisc;
@Mock INetworkManagementService mNms; @Mock INetworkManagementService mNms;
@Mock InterfaceConfiguration mConfig; @Mock InterfaceConfiguration mConfig;
@Mock NetworkAgentInfo mNai; @Mock NetworkAgentInfo mNai;
@@ -78,6 +80,7 @@ public class Nat464XlatTest {
mNai.networkInfo = new NetworkInfo(null); mNai.networkInfo = new NetworkInfo(null);
mNai.networkInfo.setType(ConnectivityManager.TYPE_WIFI); mNai.networkInfo.setType(ConnectivityManager.TYPE_WIFI);
when(mNai.connService()).thenReturn(mConnectivity); when(mNai.connService()).thenReturn(mConnectivity);
when(mNai.netMisc()).thenReturn(mMisc);
when(mNai.handler()).thenReturn(mHandler); when(mNai.handler()).thenReturn(mHandler);
when(mNms.getInterfaceConfig(eq(STACKED_IFACE))).thenReturn(mConfig); when(mNms.getInterfaceConfig(eq(STACKED_IFACE))).thenReturn(mConfig);
@@ -103,9 +106,16 @@ public class Nat464XlatTest {
mNai.networkInfo.setType(type); mNai.networkInfo.setType(type);
for (NetworkInfo.DetailedState state : supportedDetailedStates) { for (NetworkInfo.DetailedState state : supportedDetailedStates) {
mNai.networkInfo.setDetailedState(state, "reason", "extraInfo"); mNai.networkInfo.setDetailedState(state, "reason", "extraInfo");
assertTrue( String msg = String.format("requiresClat expected for type=%d state=%s",
String.format("requiresClat expected for type=%d state=%s", type, state), type, state);
Nat464Xlat.requiresClat(mNai));
mMisc.skip464xlat = true;
String errorMsg = msg + String.format(" skip464xlat=%b", mMisc.skip464xlat);
assertFalse(errorMsg, Nat464Xlat.requiresClat(mNai));
mMisc.skip464xlat = false;
errorMsg = msg + String.format(" skip464xlat=%b", mMisc.skip464xlat);
assertTrue(errorMsg, Nat464Xlat.requiresClat(mNai));
} }
} }
} }