summaryrefslogtreecommitdiff
path: root/tests/java/com/android/server/ethernet/EthernetNetworkFactoryTest.java
diff options
context:
space:
mode:
Diffstat (limited to 'tests/java/com/android/server/ethernet/EthernetNetworkFactoryTest.java')
-rw-r--r--tests/java/com/android/server/ethernet/EthernetNetworkFactoryTest.java72
1 files changed, 39 insertions, 33 deletions
diff --git a/tests/java/com/android/server/ethernet/EthernetNetworkFactoryTest.java b/tests/java/com/android/server/ethernet/EthernetNetworkFactoryTest.java
index 5d23aaf..726833f 100644
--- a/tests/java/com/android/server/ethernet/EthernetNetworkFactoryTest.java
+++ b/tests/java/com/android/server/ethernet/EthernetNetworkFactoryTest.java
@@ -41,8 +41,8 @@ import android.content.Context;
import android.content.res.Resources;
import android.net.ConnectivityManager;
import android.net.EthernetNetworkSpecifier;
+import android.net.IEthernetNetworkManagementListener;
import android.net.EthernetNetworkManagementException;
-import android.net.INetworkInterfaceOutcomeReceiver;
import android.net.IpConfiguration;
import android.net.LinkAddress;
import android.net.LinkProperties;
@@ -85,7 +85,7 @@ import java.util.concurrent.TimeUnit;
public class EthernetNetworkFactoryTest {
private static final int TIMEOUT_MS = 2_000;
private static final String TEST_IFACE = "test123";
- private static final INetworkInterfaceOutcomeReceiver NULL_LISTENER = null;
+ private static final IEthernetNetworkManagementListener NULL_LISTENER = null;
private static final String IP_ADDR = "192.0.2.2/25";
private static final LinkAddress LINK_ADDR = new LinkAddress(IP_ADDR);
private static final String HW_ADDR = "01:02:03:04:05:06";
@@ -322,7 +322,7 @@ public class EthernetNetworkFactoryTest {
assertTrue(ret);
verify(mIpClient).shutdown();
- assertEquals(listener.expectOnResult(), TEST_IFACE);
+ assertSuccessfulListener(listener, null);
}
@Test
@@ -336,7 +336,7 @@ public class EthernetNetworkFactoryTest {
assertTrue(ret);
verifyStop();
- assertEquals(listener.expectOnResult(), TEST_IFACE);
+ assertSuccessfulListener(listener, mMockNetwork);
}
@Test
@@ -353,7 +353,7 @@ public class EthernetNetworkFactoryTest {
verify(mDeps, never()).makeIpClient(any(), any(), any());
verify(mDeps, never())
.makeEthernetNetworkAgent(any(), any(), any(), any(), any(), any(), any());
- assertEquals(listener.expectOnResult(), TEST_IFACE);
+ assertSuccessfulListener(listener, null);
}
@Test
@@ -367,7 +367,7 @@ public class EthernetNetworkFactoryTest {
assertFalse(ret);
verifyNoStopOrStart();
- listener.expectOnErrorWithMessage("can't be updated as it is not available");
+ assertFailedListener(listener, "can't be updated as it is not available");
}
@Test
@@ -381,7 +381,7 @@ public class EthernetNetworkFactoryTest {
assertFalse(ret);
verifyNoStopOrStart();
- listener.expectOnErrorWithMessage("No changes");
+ assertFailedListener(listener, "No changes");
}
@Test
@@ -638,31 +638,18 @@ public class EthernetNetworkFactoryTest {
}
private static final class TestNetworkManagementListener
- implements INetworkInterfaceOutcomeReceiver {
- private final CompletableFuture<String> mResult = new CompletableFuture<>();
- private final CompletableFuture<EthernetNetworkManagementException> mError =
- new CompletableFuture<>();
+ implements IEthernetNetworkManagementListener {
+ private final CompletableFuture<Pair<Network, EthernetNetworkManagementException>> mDone
+ = new CompletableFuture<>();
@Override
- public void onResult(@NonNull String iface) {
- mResult.complete(iface);
+ public void onComplete(final Network network,
+ final EthernetNetworkManagementException exception) {
+ mDone.complete(new Pair<>(network, exception));
}
- @Override
- public void onError(@NonNull EthernetNetworkManagementException exception) {
- mError.complete(exception);
- }
-
- String expectOnResult() throws Exception {
- return mResult.get(TIMEOUT_MS, TimeUnit.MILLISECONDS);
- }
-
- EthernetNetworkManagementException expectOnError() throws Exception {
- return mError.get(TIMEOUT_MS, TimeUnit.MILLISECONDS);
- }
-
- void expectOnErrorWithMessage(String msg) throws Exception {
- assertTrue(expectOnError().getMessage().contains(msg));
+ Pair<Network, EthernetNetworkManagementException> expectOnComplete() throws Exception {
+ return mDone.get(TIMEOUT_MS, TimeUnit.MILLISECONDS);
}
@Override
@@ -682,7 +669,7 @@ public class EthernetNetworkFactoryTest {
mNetFactory.updateInterface(TEST_IFACE, ipConfiguration, capabilities, listener);
triggerOnProvisioningSuccess();
- assertEquals(listener.expectOnResult(), TEST_IFACE);
+ assertSuccessfulListener(listener, mMockNetwork);
}
@DevSdkIgnoreRule.IgnoreUpTo(SC_V2) // TODO: Use to Build.VERSION_CODES.SC_V2 when available
@@ -722,7 +709,26 @@ public class EthernetNetworkFactoryTest {
triggerOnProvisioningSuccess();
});
- assertEquals(successfulListener.expectOnResult(), TEST_IFACE);
+ assertSuccessfulListener(successfulListener, mMockNetwork);
+ }
+
+ private void assertSuccessfulListener(
+ @NonNull final TestNetworkManagementListener successfulListener,
+ @NonNull final Network expectedNetwork) throws Exception {
+ final Pair<Network, EthernetNetworkManagementException> successfulResult =
+ successfulListener.expectOnComplete();
+ assertEquals(expectedNetwork, successfulResult.first);
+ assertNull(successfulResult.second);
+ }
+
+ private void assertFailedListener(@NonNull final TestNetworkManagementListener failedListener,
+ @NonNull final String errMsg)
+ throws Exception {
+ final Pair<Network, EthernetNetworkManagementException> failedResult =
+ failedListener.expectOnComplete();
+ assertNull(failedResult.first);
+ assertNotNull(failedResult.second);
+ assertTrue(failedResult.second.getMessage().contains(errMsg));
}
private void verifyNetworkManagementCallIsAbortedWhenInterrupted(
@@ -737,7 +743,7 @@ public class EthernetNetworkFactoryTest {
mNetFactory.updateInterface(iface, ipConfiguration, capabilities, failedListener);
interruptingRunnable.run();
- failedListener.expectOnErrorWithMessage("aborted");
+ assertFailedListener(failedListener, "aborted");
}
@Test
@@ -751,7 +757,7 @@ public class EthernetNetworkFactoryTest {
mNetFactory.updateInterface(TEST_IFACE, ipConfiguration, capabilities, listener);
triggerOnProvisioningSuccess();
- assertEquals(listener.expectOnResult(), TEST_IFACE);
+ listener.expectOnComplete();
verify(mDeps).makeEthernetNetworkAgent(any(), any(),
eq(capabilities), any(), any(), any(), any());
verifyRestart(ipConfiguration);
@@ -768,7 +774,7 @@ public class EthernetNetworkFactoryTest {
mNetFactory.updateInterface(TEST_IFACE, ipConfiguration, capabilities, listener);
verifyNoStopOrStart();
- listener.expectOnErrorWithMessage("can't be updated as it is not available");
+ assertFailedListener(listener, "can't be updated as it is not available");
}
@Test