resolve merge conflicts of 9e6b6e2a58 to oc-dev-plus-aosp
Test: I solemnly swear I tested this conflict resolution. Change-Id: I2104ecf8102c8f9541ee2d3ce6589b0081db4fe3
This commit is contained in:
@@ -885,6 +885,7 @@ public class Tethering extends BaseNetworkObserver {
|
||||
}
|
||||
|
||||
if (!TextUtils.isEmpty(ifname)) {
|
||||
maybeTrackNewInterfaceLocked(ifname, ConnectivityManager.TETHERING_WIFI);
|
||||
changeInterfaceState(ifname, ipServingMode);
|
||||
} else {
|
||||
mLog.e(String.format(
|
||||
@@ -1804,7 +1805,10 @@ public class Tethering extends BaseNetworkObserver {
|
||||
mLog.log(iface + " is not a tetherable iface, ignoring");
|
||||
return;
|
||||
}
|
||||
maybeTrackNewInterfaceLocked(iface, interfaceType);
|
||||
}
|
||||
|
||||
private void maybeTrackNewInterfaceLocked(final String iface, int interfaceType) {
|
||||
// If we have already started a TISM for this interface, skip.
|
||||
if (mTetherStates.containsKey(iface)) {
|
||||
mLog.log("active iface (" + iface + ") reported as added, ignoring");
|
||||
|
||||
@@ -261,32 +261,51 @@ public class TetheringTest {
|
||||
mIntents.remove(bcast);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void failingLocalOnlyHotspotLegacyApBroadcast() throws Exception {
|
||||
public void failingLocalOnlyHotspotLegacyApBroadcast(
|
||||
boolean emulateInterfaceStatusChanged) throws Exception {
|
||||
when(mConnectivityManager.isTetheringSupported()).thenReturn(true);
|
||||
|
||||
// Emulate externally-visible WifiManager effects, causing the
|
||||
// per-interface state machine to start up, and telling us that
|
||||
// hotspot mode is to be started.
|
||||
mTethering.interfaceStatusChanged(mTestIfname, true);
|
||||
if (emulateInterfaceStatusChanged) {
|
||||
mTethering.interfaceStatusChanged(mTestIfname, true);
|
||||
}
|
||||
sendWifiApStateChanged(WIFI_AP_STATE_ENABLED);
|
||||
mLooper.dispatchAll();
|
||||
|
||||
verify(mConnectivityManager, atLeastOnce()).isTetheringSupported();
|
||||
verifyTetheringBroadcast(mTestIfname, ConnectivityManager.EXTRA_AVAILABLE_TETHER);
|
||||
// If, and only if, Tethering received an interface status changed
|
||||
// then it creates a TetherInterfaceStateMachine and sends out a
|
||||
// broadcast indicating that the interface is "available".
|
||||
if (emulateInterfaceStatusChanged) {
|
||||
verify(mConnectivityManager, atLeastOnce()).isTetheringSupported();
|
||||
verifyTetheringBroadcast(mTestIfname, ConnectivityManager.EXTRA_AVAILABLE_TETHER);
|
||||
}
|
||||
verifyNoMoreInteractions(mConnectivityManager);
|
||||
verifyNoMoreInteractions(mNMService);
|
||||
verifyNoMoreInteractions(mWifiManager);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void workingLocalOnlyHotspotEnrichedApBroadcast() throws Exception {
|
||||
public void failingLocalOnlyHotspotLegacyApBroadcastWithIfaceStatusChanged() throws Exception {
|
||||
failingLocalOnlyHotspotLegacyApBroadcast(true);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void failingLocalOnlyHotspotLegacyApBroadcastSansIfaceStatusChanged() throws Exception {
|
||||
failingLocalOnlyHotspotLegacyApBroadcast(false);
|
||||
}
|
||||
|
||||
public void workingLocalOnlyHotspotEnrichedApBroadcast(
|
||||
boolean emulateInterfaceStatusChanged) throws Exception {
|
||||
when(mConnectivityManager.isTetheringSupported()).thenReturn(true);
|
||||
|
||||
// Emulate externally-visible WifiManager effects, causing the
|
||||
// per-interface state machine to start up, and telling us that
|
||||
// hotspot mode is to be started.
|
||||
mTethering.interfaceStatusChanged(mTestIfname, true);
|
||||
if (emulateInterfaceStatusChanged) {
|
||||
mTethering.interfaceStatusChanged(mTestIfname, true);
|
||||
}
|
||||
sendWifiApStateChanged(WIFI_AP_STATE_ENABLED, mTestIfname, IFACE_IP_MODE_LOCAL_ONLY);
|
||||
mLooper.dispatchAll();
|
||||
|
||||
@@ -330,6 +349,17 @@ public class TetheringTest {
|
||||
mTethering.getLastTetherError(mTestIfname));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void workingLocalOnlyHotspotEnrichedApBroadcastWithIfaceChanged() throws Exception {
|
||||
workingLocalOnlyHotspotEnrichedApBroadcast(true);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void workingLocalOnlyHotspotEnrichedApBroadcastSansIfaceChanged() throws Exception {
|
||||
workingLocalOnlyHotspotEnrichedApBroadcast(false);
|
||||
}
|
||||
|
||||
// TODO: Test with and without interfaceStatusChanged().
|
||||
@Test
|
||||
public void failingWifiTetheringLegacyApBroadcast() throws Exception {
|
||||
when(mConnectivityManager.isTetheringSupported()).thenReturn(true);
|
||||
@@ -357,6 +387,7 @@ public class TetheringTest {
|
||||
verifyNoMoreInteractions(mWifiManager);
|
||||
}
|
||||
|
||||
// TODO: Test with and without interfaceStatusChanged().
|
||||
@Test
|
||||
public void workingWifiTetheringEnrichedApBroadcast() throws Exception {
|
||||
when(mConnectivityManager.isTetheringSupported()).thenReturn(true);
|
||||
@@ -437,6 +468,7 @@ public class TetheringTest {
|
||||
mTethering.getLastTetherError(mTestIfname));
|
||||
}
|
||||
|
||||
// TODO: Test with and without interfaceStatusChanged().
|
||||
@Test
|
||||
public void failureEnablingIpForwarding() throws Exception {
|
||||
when(mConnectivityManager.isTetheringSupported()).thenReturn(true);
|
||||
|
||||
Reference in New Issue
Block a user