Merge "ethernet: replace netd link observer with NetlinkMonitor" am: ab97a38ba8

Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/2180636

Change-Id: Idba67c11bd370935d2811f235df0186e6884560b
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
Patrick Rohr
2022-08-12 15:59:11 +00:00
committed by Automerger Merge Worker
3 changed files with 80 additions and 88 deletions

View File

@@ -30,10 +30,8 @@ import static org.mockito.ArgumentMatchers.anyString;
import static org.mockito.ArgumentMatchers.eq;
import static org.mockito.Mockito.doAnswer;
import static org.mockito.Mockito.doReturn;
import static org.mockito.Mockito.never;
import static org.mockito.Mockito.reset;
import static org.mockito.Mockito.spy;
import static org.mockito.Mockito.timeout;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
@@ -64,7 +62,6 @@ import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.ArgumentCaptor;
import org.mockito.Mock;
import org.mockito.MockitoAnnotations;
@@ -476,43 +473,4 @@ public class EthernetTrackerTest {
verify(listener).onInterfaceStateChanged(eq(testIface), eq(EthernetManager.STATE_LINK_UP),
anyInt(), any());
}
@Test
public void testListenEthernetStateChange_unsolicitedEventListener() throws Exception {
when(mNetd.interfaceGetList()).thenReturn(new String[] {});
doReturn(new String[] {}).when(mFactory).getAvailableInterfaces(anyBoolean());
tracker.setIncludeTestInterfaces(true);
tracker.start();
final ArgumentCaptor<EthernetTracker.InterfaceObserver> captor =
ArgumentCaptor.forClass(EthernetTracker.InterfaceObserver.class);
verify(mNetd, timeout(TIMEOUT_MS)).registerUnsolicitedEventListener(captor.capture());
final EthernetTracker.InterfaceObserver observer = captor.getValue();
tracker.setEthernetEnabled(false);
waitForIdle();
reset(mFactory);
reset(mNetd);
final String testIface = "testtap1";
observer.onInterfaceAdded(testIface);
verify(mFactory, never()).addInterface(eq(testIface), anyString(), any(), any());
observer.onInterfaceRemoved(testIface);
verify(mFactory, never()).removeInterface(eq(testIface));
final String testHwAddr = "11:22:33:44:55:66";
final InterfaceConfigurationParcel testIfaceParce =
createMockedIfaceParcel(testIface, testHwAddr);
when(mNetd.interfaceGetList()).thenReturn(new String[] {testIface});
when(mNetd.interfaceGetCfg(eq(testIface))).thenReturn(testIfaceParce);
doReturn(new String[] {testIface}).when(mFactory).getAvailableInterfaces(anyBoolean());
tracker.setEthernetEnabled(true);
waitForIdle();
reset(mFactory);
final String testIface2 = "testtap2";
observer.onInterfaceRemoved(testIface2);
verify(mFactory, timeout(TIMEOUT_MS)).removeInterface(eq(testIface2));
}
}