Factorize custom asserts.
Also a few utilities that were in the way, and some opportunistic cleanups. Test: FrameworksNetTest NetworkStackTest Change-Id: I385070e2044fd967cb18f1ffea9a86a4627b742e
This commit is contained in:
@@ -16,16 +16,18 @@
|
||||
|
||||
package android.net;
|
||||
|
||||
import static com.android.testutils.MiscAssertsKt.assertEqualBothWays;
|
||||
import static com.android.testutils.MiscAssertsKt.assertFieldCountEquals;
|
||||
import static com.android.testutils.MiscAssertsKt.assertNotEqualEitherWay;
|
||||
import static com.android.testutils.ParcelUtilsKt.assertParcelingIsLossless;
|
||||
|
||||
import static org.junit.Assert.assertArrayEquals;
|
||||
import static org.junit.Assert.assertEquals;
|
||||
import static org.junit.Assert.assertFalse;
|
||||
import static org.junit.Assert.assertNotEquals;
|
||||
import static org.junit.Assert.assertNotNull;
|
||||
import static org.junit.Assert.assertTrue;
|
||||
import static org.junit.Assert.fail;
|
||||
|
||||
import android.os.Parcel;
|
||||
|
||||
import androidx.test.filters.SmallTest;
|
||||
import androidx.test.runner.AndroidJUnit4;
|
||||
|
||||
@@ -171,56 +173,46 @@ public class IpPrefixTest {
|
||||
|
||||
}
|
||||
|
||||
private void assertAreEqual(Object o1, Object o2) {
|
||||
assertTrue(o1.equals(o2));
|
||||
assertTrue(o2.equals(o1));
|
||||
}
|
||||
|
||||
private void assertAreNotEqual(Object o1, Object o2) {
|
||||
assertFalse(o1.equals(o2));
|
||||
assertFalse(o2.equals(o1));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testEquals() {
|
||||
IpPrefix p1, p2;
|
||||
|
||||
p1 = new IpPrefix("192.0.2.251/23");
|
||||
p2 = new IpPrefix(new byte[]{(byte) 192, (byte) 0, (byte) 2, (byte) 251}, 23);
|
||||
assertAreEqual(p1, p2);
|
||||
assertEqualBothWays(p1, p2);
|
||||
|
||||
p1 = new IpPrefix("192.0.2.5/23");
|
||||
assertAreEqual(p1, p2);
|
||||
assertEqualBothWays(p1, p2);
|
||||
|
||||
p1 = new IpPrefix("192.0.2.5/24");
|
||||
assertAreNotEqual(p1, p2);
|
||||
assertNotEqualEitherWay(p1, p2);
|
||||
|
||||
p1 = new IpPrefix("192.0.4.5/23");
|
||||
assertAreNotEqual(p1, p2);
|
||||
assertNotEqualEitherWay(p1, p2);
|
||||
|
||||
|
||||
p1 = new IpPrefix("2001:db8:dead:beef:f00::80/122");
|
||||
p2 = new IpPrefix(IPV6_BYTES, 122);
|
||||
assertEquals("2001:db8:dead:beef:f00::80/122", p2.toString());
|
||||
assertAreEqual(p1, p2);
|
||||
assertEqualBothWays(p1, p2);
|
||||
|
||||
p1 = new IpPrefix("2001:db8:dead:beef:f00::bf/122");
|
||||
assertAreEqual(p1, p2);
|
||||
assertEqualBothWays(p1, p2);
|
||||
|
||||
p1 = new IpPrefix("2001:db8:dead:beef:f00::8:0/123");
|
||||
assertAreNotEqual(p1, p2);
|
||||
assertNotEqualEitherWay(p1, p2);
|
||||
|
||||
p1 = new IpPrefix("2001:db8:dead:beef::/122");
|
||||
assertAreNotEqual(p1, p2);
|
||||
assertNotEqualEitherWay(p1, p2);
|
||||
|
||||
// 192.0.2.4/32 != c000:0204::/32.
|
||||
byte[] ipv6bytes = new byte[16];
|
||||
System.arraycopy(IPV4_BYTES, 0, ipv6bytes, 0, IPV4_BYTES.length);
|
||||
p1 = new IpPrefix(ipv6bytes, 32);
|
||||
assertAreEqual(p1, new IpPrefix("c000:0204::/32"));
|
||||
assertEqualBothWays(p1, new IpPrefix("c000:0204::/32"));
|
||||
|
||||
p2 = new IpPrefix(IPV4_BYTES, 32);
|
||||
assertAreNotEqual(p1, p2);
|
||||
assertNotEqualEitherWay(p1, p2);
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -356,25 +348,6 @@ public class IpPrefixTest {
|
||||
assertEquals(InetAddress.parseNumericAddress("192.0.2.0"), p.getAddress());
|
||||
}
|
||||
|
||||
public IpPrefix passThroughParcel(IpPrefix p) {
|
||||
Parcel parcel = Parcel.obtain();
|
||||
IpPrefix p2 = null;
|
||||
try {
|
||||
p.writeToParcel(parcel, 0);
|
||||
parcel.setDataPosition(0);
|
||||
p2 = IpPrefix.CREATOR.createFromParcel(parcel);
|
||||
} finally {
|
||||
parcel.recycle();
|
||||
}
|
||||
assertNotNull(p2);
|
||||
return p2;
|
||||
}
|
||||
|
||||
public void assertParcelingIsLossless(IpPrefix p) {
|
||||
IpPrefix p2 = passThroughParcel(p);
|
||||
assertEquals(p, p2);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testParceling() {
|
||||
IpPrefix p;
|
||||
@@ -386,5 +359,7 @@ public class IpPrefixTest {
|
||||
p = new IpPrefix("192.0.2.0/25");
|
||||
assertParcelingIsLossless(p);
|
||||
assertTrue(p.isIPv4());
|
||||
|
||||
assertFieldCountEquals(2, IpPrefix.class);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -27,15 +27,17 @@ import static android.system.OsConstants.RT_SCOPE_LINK;
|
||||
import static android.system.OsConstants.RT_SCOPE_SITE;
|
||||
import static android.system.OsConstants.RT_SCOPE_UNIVERSE;
|
||||
|
||||
import static com.android.testutils.MiscAssertsKt.assertEqualBothWays;
|
||||
import static com.android.testutils.MiscAssertsKt.assertNotEqualEitherWay;
|
||||
import static com.android.testutils.ParcelUtilsKt.assertParcelSane;
|
||||
import static com.android.testutils.ParcelUtilsKt.assertParcelingIsLossless;
|
||||
|
||||
import static org.junit.Assert.assertEquals;
|
||||
import static org.junit.Assert.assertFalse;
|
||||
import static org.junit.Assert.assertNotEquals;
|
||||
import static org.junit.Assert.assertNotNull;
|
||||
import static org.junit.Assert.assertTrue;
|
||||
import static org.junit.Assert.fail;
|
||||
|
||||
import android.os.Parcel;
|
||||
|
||||
import androidx.test.filters.SmallTest;
|
||||
import androidx.test.runner.AndroidJUnit4;
|
||||
|
||||
@@ -217,67 +219,56 @@ public class LinkAddressTest {
|
||||
l1.isSameAddressAs(l2));
|
||||
}
|
||||
|
||||
private void assertLinkAddressesEqual(LinkAddress l1, LinkAddress l2) {
|
||||
assertTrue(l1 + " unexpectedly not equal to " + l2, l1.equals(l2));
|
||||
assertTrue(l2 + " unexpectedly not equal to " + l1, l2.equals(l1));
|
||||
assertEquals(l1.hashCode(), l2.hashCode());
|
||||
}
|
||||
|
||||
private void assertLinkAddressesNotEqual(LinkAddress l1, LinkAddress l2) {
|
||||
assertFalse(l1 + " unexpectedly equal to " + l2, l1.equals(l2));
|
||||
assertFalse(l2 + " unexpectedly equal to " + l1, l2.equals(l1));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testEqualsAndSameAddressAs() {
|
||||
LinkAddress l1, l2, l3;
|
||||
|
||||
l1 = new LinkAddress("2001:db8::1/64");
|
||||
l2 = new LinkAddress("2001:db8::1/64");
|
||||
assertLinkAddressesEqual(l1, l2);
|
||||
assertEqualBothWays(l1, l2);
|
||||
assertIsSameAddressAs(l1, l2);
|
||||
|
||||
l2 = new LinkAddress("2001:db8::1/65");
|
||||
assertLinkAddressesNotEqual(l1, l2);
|
||||
assertNotEqualEitherWay(l1, l2);
|
||||
assertIsNotSameAddressAs(l1, l2);
|
||||
|
||||
l2 = new LinkAddress("2001:db8::2/64");
|
||||
assertLinkAddressesNotEqual(l1, l2);
|
||||
assertNotEqualEitherWay(l1, l2);
|
||||
assertIsNotSameAddressAs(l1, l2);
|
||||
|
||||
|
||||
l1 = new LinkAddress("192.0.2.1/24");
|
||||
l2 = new LinkAddress("192.0.2.1/24");
|
||||
assertLinkAddressesEqual(l1, l2);
|
||||
assertEqualBothWays(l1, l2);
|
||||
assertIsSameAddressAs(l1, l2);
|
||||
|
||||
l2 = new LinkAddress("192.0.2.1/23");
|
||||
assertLinkAddressesNotEqual(l1, l2);
|
||||
assertNotEqualEitherWay(l1, l2);
|
||||
assertIsNotSameAddressAs(l1, l2);
|
||||
|
||||
l2 = new LinkAddress("192.0.2.2/24");
|
||||
assertLinkAddressesNotEqual(l1, l2);
|
||||
assertNotEqualEitherWay(l1, l2);
|
||||
assertIsNotSameAddressAs(l1, l2);
|
||||
|
||||
|
||||
// Check equals() and isSameAddressAs() on identical addresses with different flags.
|
||||
l1 = new LinkAddress(V6_ADDRESS, 64);
|
||||
l2 = new LinkAddress(V6_ADDRESS, 64, 0, RT_SCOPE_UNIVERSE);
|
||||
assertLinkAddressesEqual(l1, l2);
|
||||
assertEqualBothWays(l1, l2);
|
||||
assertIsSameAddressAs(l1, l2);
|
||||
|
||||
l2 = new LinkAddress(V6_ADDRESS, 64, IFA_F_DEPRECATED, RT_SCOPE_UNIVERSE);
|
||||
assertLinkAddressesNotEqual(l1, l2);
|
||||
assertNotEqualEitherWay(l1, l2);
|
||||
assertIsSameAddressAs(l1, l2);
|
||||
|
||||
// Check equals() and isSameAddressAs() on identical addresses with different scope.
|
||||
l1 = new LinkAddress(V4_ADDRESS, 24);
|
||||
l2 = new LinkAddress(V4_ADDRESS, 24, 0, RT_SCOPE_UNIVERSE);
|
||||
assertLinkAddressesEqual(l1, l2);
|
||||
assertEqualBothWays(l1, l2);
|
||||
assertIsSameAddressAs(l1, l2);
|
||||
|
||||
l2 = new LinkAddress(V4_ADDRESS, 24, 0, RT_SCOPE_HOST);
|
||||
assertLinkAddressesNotEqual(l1, l2);
|
||||
assertNotEqualEitherWay(l1, l2);
|
||||
assertIsSameAddressAs(l1, l2);
|
||||
|
||||
// Addresses with the same start or end bytes aren't equal between families.
|
||||
@@ -291,10 +282,10 @@ public class LinkAddressTest {
|
||||
assertTrue(Arrays.equals(ipv4Bytes, l2FirstIPv6Bytes));
|
||||
assertTrue(Arrays.equals(ipv4Bytes, l3LastIPv6Bytes));
|
||||
|
||||
assertLinkAddressesNotEqual(l1, l2);
|
||||
assertNotEqualEitherWay(l1, l2);
|
||||
assertIsNotSameAddressAs(l1, l2);
|
||||
|
||||
assertLinkAddressesNotEqual(l1, l3);
|
||||
assertNotEqualEitherWay(l1, l3);
|
||||
assertIsNotSameAddressAs(l1, l3);
|
||||
|
||||
// Because we use InetAddress, an IPv4 address is equal to its IPv4-mapped address.
|
||||
@@ -302,7 +293,7 @@ public class LinkAddressTest {
|
||||
String addressString = V4 + "/24";
|
||||
l1 = new LinkAddress(addressString);
|
||||
l2 = new LinkAddress("::ffff:" + addressString);
|
||||
assertLinkAddressesEqual(l1, l2);
|
||||
assertEqualBothWays(l1, l2);
|
||||
assertIsSameAddressAs(l1, l2);
|
||||
}
|
||||
|
||||
@@ -319,25 +310,6 @@ public class LinkAddressTest {
|
||||
assertNotEquals(l1.hashCode(), l2.hashCode());
|
||||
}
|
||||
|
||||
private LinkAddress passThroughParcel(LinkAddress l) {
|
||||
Parcel p = Parcel.obtain();
|
||||
LinkAddress l2 = null;
|
||||
try {
|
||||
l.writeToParcel(p, 0);
|
||||
p.setDataPosition(0);
|
||||
l2 = LinkAddress.CREATOR.createFromParcel(p);
|
||||
} finally {
|
||||
p.recycle();
|
||||
}
|
||||
assertNotNull(l2);
|
||||
return l2;
|
||||
}
|
||||
|
||||
private void assertParcelingIsLossless(LinkAddress l) {
|
||||
LinkAddress l2 = passThroughParcel(l);
|
||||
assertEquals(l, l2);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testParceling() {
|
||||
LinkAddress l;
|
||||
@@ -346,7 +318,7 @@ public class LinkAddressTest {
|
||||
assertParcelingIsLossless(l);
|
||||
|
||||
l = new LinkAddress(V4 + "/28", IFA_F_PERMANENT, RT_SCOPE_LINK);
|
||||
assertParcelingIsLossless(l);
|
||||
assertParcelSane(l, 4);
|
||||
}
|
||||
|
||||
private void assertGlobalPreferred(LinkAddress l, String msg) {
|
||||
|
||||
@@ -16,6 +16,8 @@
|
||||
|
||||
package android.net;
|
||||
|
||||
import static com.android.testutils.ParcelUtilsKt.assertParcelingIsLossless;
|
||||
|
||||
import static org.junit.Assert.assertEquals;
|
||||
import static org.junit.Assert.assertFalse;
|
||||
import static org.junit.Assert.assertNotEquals;
|
||||
@@ -31,8 +33,6 @@ import android.util.ArraySet;
|
||||
import androidx.test.filters.SmallTest;
|
||||
import androidx.test.runner.AndroidJUnit4;
|
||||
|
||||
import com.android.internal.util.TestUtils;
|
||||
|
||||
import org.junit.Test;
|
||||
import org.junit.runner.RunWith;
|
||||
|
||||
@@ -942,13 +942,13 @@ public class LinkPropertiesTest {
|
||||
|
||||
source.setNat64Prefix(new IpPrefix("2001:db8:1:2:64:64::/96"));
|
||||
|
||||
TestUtils.assertParcelingIsLossless(source);
|
||||
assertParcelingIsLossless(source);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testParcelUninitialized() throws Exception {
|
||||
LinkProperties empty = new LinkProperties();
|
||||
TestUtils.assertParcelingIsLossless(empty);
|
||||
assertParcelingIsLossless(empty);
|
||||
}
|
||||
|
||||
@Test
|
||||
|
||||
@@ -38,6 +38,9 @@ import static android.net.NetworkCapabilities.TRANSPORT_VPN;
|
||||
import static android.net.NetworkCapabilities.TRANSPORT_WIFI;
|
||||
import static android.net.NetworkCapabilities.UNRESTRICTED_CAPABILITIES;
|
||||
|
||||
import static com.android.testutils.ParcelUtilsKt.assertParcelSane;
|
||||
import static com.android.testutils.ParcelUtilsKt.assertParcelingIsLossless;
|
||||
|
||||
import static org.junit.Assert.assertArrayEquals;
|
||||
import static org.junit.Assert.assertEquals;
|
||||
import static org.junit.Assert.assertFalse;
|
||||
@@ -45,7 +48,6 @@ import static org.junit.Assert.assertNotEquals;
|
||||
import static org.junit.Assert.assertTrue;
|
||||
import static org.junit.Assert.fail;
|
||||
|
||||
import android.os.Parcel;
|
||||
import android.test.suitebuilder.annotation.SmallTest;
|
||||
import android.util.ArraySet;
|
||||
|
||||
@@ -267,9 +269,9 @@ public class NetworkCapabilitiesTest {
|
||||
.setUids(uids)
|
||||
.addCapability(NET_CAPABILITY_EIMS)
|
||||
.addCapability(NET_CAPABILITY_NOT_METERED);
|
||||
assertEqualsThroughMarshalling(netCap);
|
||||
assertParcelingIsLossless(netCap);
|
||||
netCap.setSSID(TEST_SSID);
|
||||
assertEqualsThroughMarshalling(netCap);
|
||||
assertParcelSane(netCap, 11);
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -542,18 +544,6 @@ public class NetworkCapabilitiesTest {
|
||||
nc1.combineCapabilities(nc3);
|
||||
}
|
||||
|
||||
private void assertEqualsThroughMarshalling(NetworkCapabilities netCap) {
|
||||
Parcel p = Parcel.obtain();
|
||||
netCap.writeToParcel(p, /* flags */ 0);
|
||||
p.setDataPosition(0);
|
||||
byte[] marshalledData = p.marshall();
|
||||
|
||||
p = Parcel.obtain();
|
||||
p.unmarshall(marshalledData, 0, marshalledData.length);
|
||||
p.setDataPosition(0);
|
||||
assertEquals(NetworkCapabilities.CREATOR.createFromParcel(p), netCap);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testSet() {
|
||||
NetworkCapabilities nc1 = new NetworkCapabilities();
|
||||
|
||||
@@ -18,13 +18,10 @@ package android.net;
|
||||
|
||||
import static org.junit.Assert.assertEquals;
|
||||
import static org.junit.Assert.assertFalse;
|
||||
import static org.junit.Assert.assertNotEquals;
|
||||
import static org.junit.Assert.assertTrue;
|
||||
import static org.junit.Assert.fail;
|
||||
|
||||
import android.net.LocalServerSocket;
|
||||
import android.net.LocalSocket;
|
||||
import android.net.LocalSocketAddress;
|
||||
import android.net.Network;
|
||||
import android.platform.test.annotations.AppModeFull;
|
||||
|
||||
import androidx.test.filters.SmallTest;
|
||||
@@ -40,7 +37,6 @@ import java.net.DatagramSocket;
|
||||
import java.net.Inet6Address;
|
||||
import java.net.InetAddress;
|
||||
import java.net.SocketException;
|
||||
import java.util.Objects;
|
||||
|
||||
@RunWith(AndroidJUnit4.class)
|
||||
@SmallTest
|
||||
@@ -123,29 +119,29 @@ public class NetworkTest {
|
||||
Network three = new Network(3);
|
||||
|
||||
// None of the hashcodes are zero.
|
||||
assertNotEqual(0, one.hashCode());
|
||||
assertNotEqual(0, two.hashCode());
|
||||
assertNotEqual(0, three.hashCode());
|
||||
assertNotEquals(0, one.hashCode());
|
||||
assertNotEquals(0, two.hashCode());
|
||||
assertNotEquals(0, three.hashCode());
|
||||
|
||||
// All the hashcodes are distinct.
|
||||
assertNotEqual(one.hashCode(), two.hashCode());
|
||||
assertNotEqual(one.hashCode(), three.hashCode());
|
||||
assertNotEqual(two.hashCode(), three.hashCode());
|
||||
assertNotEquals(one.hashCode(), two.hashCode());
|
||||
assertNotEquals(one.hashCode(), three.hashCode());
|
||||
assertNotEquals(two.hashCode(), three.hashCode());
|
||||
|
||||
// None of the handles are zero.
|
||||
assertNotEqual(0, one.getNetworkHandle());
|
||||
assertNotEqual(0, two.getNetworkHandle());
|
||||
assertNotEqual(0, three.getNetworkHandle());
|
||||
assertNotEquals(0, one.getNetworkHandle());
|
||||
assertNotEquals(0, two.getNetworkHandle());
|
||||
assertNotEquals(0, three.getNetworkHandle());
|
||||
|
||||
// All the handles are distinct.
|
||||
assertNotEqual(one.getNetworkHandle(), two.getNetworkHandle());
|
||||
assertNotEqual(one.getNetworkHandle(), three.getNetworkHandle());
|
||||
assertNotEqual(two.getNetworkHandle(), three.getNetworkHandle());
|
||||
assertNotEquals(one.getNetworkHandle(), two.getNetworkHandle());
|
||||
assertNotEquals(one.getNetworkHandle(), three.getNetworkHandle());
|
||||
assertNotEquals(two.getNetworkHandle(), three.getNetworkHandle());
|
||||
|
||||
// The handles are not equal to the hashcodes.
|
||||
assertNotEqual(one.hashCode(), one.getNetworkHandle());
|
||||
assertNotEqual(two.hashCode(), two.getNetworkHandle());
|
||||
assertNotEqual(three.hashCode(), three.getNetworkHandle());
|
||||
assertNotEquals(one.hashCode(), one.getNetworkHandle());
|
||||
assertNotEquals(two.hashCode(), two.getNetworkHandle());
|
||||
assertNotEquals(three.hashCode(), three.getNetworkHandle());
|
||||
|
||||
// Adjust as necessary to test an implementation's specific constants.
|
||||
// When running with runtest, "adb logcat -s TestRunner" can be useful.
|
||||
@@ -154,15 +150,11 @@ public class NetworkTest {
|
||||
assertEquals(16290598925L, three.getNetworkHandle());
|
||||
}
|
||||
|
||||
private static <T> void assertNotEqual(T t1, T t2) {
|
||||
assertFalse(Objects.equals(t1, t2));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testGetPrivateDnsBypassingCopy() {
|
||||
final Network copy = mNetwork.getPrivateDnsBypassingCopy();
|
||||
assertEquals(mNetwork.netId, copy.netId);
|
||||
assertNotEqual(copy.netId, copy.getNetIdForResolv());
|
||||
assertNotEqual(mNetwork.getNetIdForResolv(), copy.getNetIdForResolv());
|
||||
assertNotEquals(copy.netId, copy.getNetIdForResolv());
|
||||
assertNotEquals(mNetwork.getNetIdForResolv(), copy.getNetIdForResolv());
|
||||
}
|
||||
}
|
||||
|
||||
@@ -18,7 +18,11 @@ package android.net;
|
||||
|
||||
import static android.net.RouteInfo.RTN_UNREACHABLE;
|
||||
|
||||
import android.os.Parcel;
|
||||
import static com.android.testutils.MiscAssertsKt.assertEqualBothWays;
|
||||
import static com.android.testutils.MiscAssertsKt.assertNotEqualEitherWay;
|
||||
import static com.android.testutils.ParcelUtilsKt.assertParcelSane;
|
||||
import static com.android.testutils.ParcelUtilsKt.assertParcelingIsLossless;
|
||||
|
||||
import android.test.suitebuilder.annotation.SmallTest;
|
||||
|
||||
import junit.framework.TestCase;
|
||||
@@ -109,47 +113,37 @@ public class RouteInfoTest extends TestCase {
|
||||
assertFalse(ipv4Default.matches(Address("2001:db8::f00")));
|
||||
}
|
||||
|
||||
private void assertAreEqual(Object o1, Object o2) {
|
||||
assertTrue(o1.equals(o2));
|
||||
assertTrue(o2.equals(o1));
|
||||
}
|
||||
|
||||
private void assertAreNotEqual(Object o1, Object o2) {
|
||||
assertFalse(o1.equals(o2));
|
||||
assertFalse(o2.equals(o1));
|
||||
}
|
||||
|
||||
public void testEquals() {
|
||||
// IPv4
|
||||
RouteInfo r1 = new RouteInfo(Prefix("2001:db8:ace::/48"), Address("2001:db8::1"), "wlan0");
|
||||
RouteInfo r2 = new RouteInfo(Prefix("2001:db8:ace::/48"), Address("2001:db8::1"), "wlan0");
|
||||
assertAreEqual(r1, r2);
|
||||
assertEqualBothWays(r1, r2);
|
||||
|
||||
RouteInfo r3 = new RouteInfo(Prefix("2001:db8:ace::/49"), Address("2001:db8::1"), "wlan0");
|
||||
RouteInfo r4 = new RouteInfo(Prefix("2001:db8:ace::/48"), Address("2001:db8::2"), "wlan0");
|
||||
RouteInfo r5 = new RouteInfo(Prefix("2001:db8:ace::/48"), Address("2001:db8::1"), "rmnet0");
|
||||
assertAreNotEqual(r1, r3);
|
||||
assertAreNotEqual(r1, r4);
|
||||
assertAreNotEqual(r1, r5);
|
||||
assertNotEqualEitherWay(r1, r3);
|
||||
assertNotEqualEitherWay(r1, r4);
|
||||
assertNotEqualEitherWay(r1, r5);
|
||||
|
||||
// IPv6
|
||||
r1 = new RouteInfo(Prefix("192.0.2.0/25"), Address("192.0.2.1"), "wlan0");
|
||||
r2 = new RouteInfo(Prefix("192.0.2.0/25"), Address("192.0.2.1"), "wlan0");
|
||||
assertAreEqual(r1, r2);
|
||||
assertEqualBothWays(r1, r2);
|
||||
|
||||
r3 = new RouteInfo(Prefix("192.0.2.0/24"), Address("192.0.2.1"), "wlan0");
|
||||
r4 = new RouteInfo(Prefix("192.0.2.0/25"), Address("192.0.2.2"), "wlan0");
|
||||
r5 = new RouteInfo(Prefix("192.0.2.0/25"), Address("192.0.2.1"), "rmnet0");
|
||||
assertAreNotEqual(r1, r3);
|
||||
assertAreNotEqual(r1, r4);
|
||||
assertAreNotEqual(r1, r5);
|
||||
assertNotEqualEitherWay(r1, r3);
|
||||
assertNotEqualEitherWay(r1, r4);
|
||||
assertNotEqualEitherWay(r1, r5);
|
||||
|
||||
// Interfaces (but not destinations or gateways) can be null.
|
||||
r1 = new RouteInfo(Prefix("192.0.2.0/25"), Address("192.0.2.1"), null);
|
||||
r2 = new RouteInfo(Prefix("192.0.2.0/25"), Address("192.0.2.1"), null);
|
||||
r3 = new RouteInfo(Prefix("192.0.2.0/24"), Address("192.0.2.1"), "wlan0");
|
||||
assertAreEqual(r1, r2);
|
||||
assertAreNotEqual(r1, r3);
|
||||
assertEqualBothWays(r1, r2);
|
||||
assertNotEqualEitherWay(r1, r3);
|
||||
}
|
||||
|
||||
public void testHostAndDefaultRoutes() {
|
||||
@@ -257,25 +251,6 @@ public class RouteInfoTest extends TestCase {
|
||||
// No exceptions? Good.
|
||||
}
|
||||
|
||||
public RouteInfo passThroughParcel(RouteInfo r) {
|
||||
Parcel p = Parcel.obtain();
|
||||
RouteInfo r2 = null;
|
||||
try {
|
||||
r.writeToParcel(p, 0);
|
||||
p.setDataPosition(0);
|
||||
r2 = RouteInfo.CREATOR.createFromParcel(p);
|
||||
} finally {
|
||||
p.recycle();
|
||||
}
|
||||
assertNotNull(r2);
|
||||
return r2;
|
||||
}
|
||||
|
||||
public void assertParcelingIsLossless(RouteInfo r) {
|
||||
RouteInfo r2 = passThroughParcel(r);
|
||||
assertEquals(r, r2);
|
||||
}
|
||||
|
||||
public void testParceling() {
|
||||
RouteInfo r;
|
||||
|
||||
@@ -283,6 +258,6 @@ public class RouteInfoTest extends TestCase {
|
||||
assertParcelingIsLossless(r);
|
||||
|
||||
r = new RouteInfo(Prefix("192.0.2.0/24"), null, "wlan0");
|
||||
assertParcelingIsLossless(r);
|
||||
assertParcelSane(r, 6);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -18,6 +18,7 @@ package android.net;
|
||||
|
||||
import static org.junit.Assert.assertEquals;
|
||||
import static org.junit.Assert.assertFalse;
|
||||
import static org.junit.Assert.assertNotEquals;
|
||||
import static org.junit.Assert.assertNotNull;
|
||||
import static org.junit.Assert.assertNull;
|
||||
import static org.junit.Assert.assertTrue;
|
||||
@@ -34,7 +35,6 @@ import java.net.InetAddress;
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashSet;
|
||||
import java.util.List;
|
||||
import java.util.Objects;
|
||||
|
||||
@RunWith(AndroidJUnit4.class)
|
||||
@SmallTest
|
||||
@@ -61,10 +61,6 @@ public class StaticIpConfigurationTest {
|
||||
assertEquals(0, s.dnsServers.size());
|
||||
}
|
||||
|
||||
private static <T> void assertNotEquals(T t1, T t2) {
|
||||
assertFalse(Objects.equals(t1, t2));
|
||||
}
|
||||
|
||||
private StaticIpConfiguration makeTestObject() {
|
||||
StaticIpConfiguration s = new StaticIpConfiguration();
|
||||
s.ipAddress = ADDR;
|
||||
|
||||
@@ -16,6 +16,8 @@
|
||||
|
||||
package android.net.apf;
|
||||
|
||||
import static com.android.testutils.ParcelUtilsKt.assertParcelSane;
|
||||
|
||||
import static org.junit.Assert.assertEquals;
|
||||
import static org.junit.Assert.assertFalse;
|
||||
import static org.junit.Assert.assertNotEquals;
|
||||
@@ -24,9 +26,6 @@ import static org.junit.Assert.assertTrue;
|
||||
import androidx.test.filters.SmallTest;
|
||||
import androidx.test.runner.AndroidJUnit4;
|
||||
|
||||
import com.android.internal.util.ParcelableTestUtil;
|
||||
import com.android.internal.util.TestUtils;
|
||||
|
||||
import org.junit.Test;
|
||||
import org.junit.runner.RunWith;
|
||||
|
||||
@@ -40,9 +39,7 @@ public class ApfCapabilitiesTest {
|
||||
assertEquals(456, caps.maximumApfProgramSize);
|
||||
assertEquals(789, caps.apfPacketFormat);
|
||||
|
||||
ParcelableTestUtil.assertFieldCountEquals(3, ApfCapabilities.class);
|
||||
|
||||
TestUtils.assertParcelingIsLossless(caps);
|
||||
assertParcelSane(caps, 3);
|
||||
}
|
||||
|
||||
@Test
|
||||
|
||||
@@ -16,11 +16,9 @@
|
||||
|
||||
package android.net.metrics;
|
||||
|
||||
import android.os.Parcelable
|
||||
import androidx.test.filters.SmallTest
|
||||
import androidx.test.runner.AndroidJUnit4
|
||||
import com.android.internal.util.ParcelableTestUtil
|
||||
import com.android.internal.util.TestUtils
|
||||
import com.android.testutils.assertParcelSane
|
||||
import org.junit.Assert.assertEquals
|
||||
import org.junit.Assert.assertFalse
|
||||
import org.junit.Assert.assertTrue
|
||||
@@ -30,11 +28,6 @@ import org.junit.runner.RunWith
|
||||
@RunWith(AndroidJUnit4::class)
|
||||
@SmallTest
|
||||
class ApfProgramEventTest {
|
||||
private fun <T: Parcelable> testParcel(obj: T, fieldCount: Int) {
|
||||
ParcelableTestUtil.assertFieldCountEquals(fieldCount, obj::class.java)
|
||||
TestUtils.assertParcelingIsLossless(obj)
|
||||
}
|
||||
|
||||
private infix fun Int.hasFlag(flag: Int) = (this and (1 shl flag)) != 0
|
||||
|
||||
@Test
|
||||
@@ -55,7 +48,7 @@ class ApfProgramEventTest {
|
||||
assertEquals(5, apfProgramEvent.programLength)
|
||||
assertEquals(ApfProgramEvent.flagsFor(true, true), apfProgramEvent.flags)
|
||||
|
||||
testParcel(apfProgramEvent, 6)
|
||||
assertParcelSane(apfProgramEvent, 6)
|
||||
}
|
||||
|
||||
@Test
|
||||
|
||||
@@ -16,11 +16,9 @@
|
||||
|
||||
package android.net.metrics
|
||||
|
||||
import android.os.Parcelable
|
||||
import androidx.test.filters.SmallTest
|
||||
import androidx.test.runner.AndroidJUnit4
|
||||
import com.android.internal.util.ParcelableTestUtil
|
||||
import com.android.internal.util.TestUtils
|
||||
import com.android.testutils.assertParcelSane
|
||||
import org.junit.Assert.assertEquals
|
||||
import org.junit.Test
|
||||
import org.junit.runner.RunWith
|
||||
@@ -28,11 +26,6 @@ import org.junit.runner.RunWith
|
||||
@RunWith(AndroidJUnit4::class)
|
||||
@SmallTest
|
||||
class ApfStatsTest {
|
||||
private fun <T: Parcelable> testParcel(obj: T, fieldCount: Int) {
|
||||
ParcelableTestUtil.assertFieldCountEquals(fieldCount, obj::class.java)
|
||||
TestUtils.assertParcelingIsLossless(obj)
|
||||
}
|
||||
|
||||
@Test
|
||||
fun testBuilderAndParcel() {
|
||||
val apfStats = ApfStats.Builder()
|
||||
@@ -59,6 +52,6 @@ class ApfStatsTest {
|
||||
assertEquals(8, apfStats.programUpdatesAllowingMulticast)
|
||||
assertEquals(9, apfStats.maxProgramSize)
|
||||
|
||||
testParcel(apfStats, 10)
|
||||
assertParcelSane(apfStats, 10)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
package android.net.metrics
|
||||
|
||||
import android.net.metrics.DhcpErrorEvent.errorCodeWithOption
|
||||
import android.net.metrics.DhcpErrorEvent.DHCP_INVALID_OPTION_LENGTH
|
||||
import android.net.metrics.DhcpErrorEvent.errorCodeWithOption
|
||||
import androidx.test.filters.SmallTest
|
||||
import androidx.test.runner.AndroidJUnit4
|
||||
import com.android.internal.util.TestUtils.parcelingRoundTrip
|
||||
import com.android.testutils.parcelingRoundTrip
|
||||
import java.lang.reflect.Modifier
|
||||
import org.junit.Assert.assertEquals
|
||||
import org.junit.Assert.assertNotNull
|
||||
@@ -62,4 +62,4 @@ class DhcpErrorEventTest {
|
||||
fun testToString_InvalidErrorCode() {
|
||||
assertNotNull(DhcpErrorEvent(TEST_ERROR_CODE).toString())
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -16,11 +16,9 @@
|
||||
|
||||
package android.net.metrics
|
||||
|
||||
import android.os.Parcelable
|
||||
import androidx.test.filters.SmallTest
|
||||
import androidx.test.runner.AndroidJUnit4
|
||||
import com.android.internal.util.ParcelableTestUtil
|
||||
import com.android.internal.util.TestUtils
|
||||
import com.android.testutils.assertParcelSane
|
||||
import org.junit.Assert.assertEquals
|
||||
import org.junit.Test
|
||||
import org.junit.runner.RunWith
|
||||
@@ -28,18 +26,13 @@ import org.junit.runner.RunWith
|
||||
@RunWith(AndroidJUnit4::class)
|
||||
@SmallTest
|
||||
class IpReachabilityEventTest {
|
||||
private fun <T: Parcelable> testParcel(obj: T, fieldCount: Int) {
|
||||
ParcelableTestUtil.assertFieldCountEquals(fieldCount, obj::class.java)
|
||||
TestUtils.assertParcelingIsLossless(obj)
|
||||
}
|
||||
|
||||
@Test
|
||||
fun testConstructorAndParcel() {
|
||||
(IpReachabilityEvent.PROBE..IpReachabilityEvent.PROVISIONING_LOST_ORGANIC).forEach {
|
||||
val ipReachabilityEvent = IpReachabilityEvent(it)
|
||||
assertEquals(it, ipReachabilityEvent.eventType)
|
||||
|
||||
testParcel(ipReachabilityEvent, 1)
|
||||
assertParcelSane(ipReachabilityEvent, 1)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -16,11 +16,9 @@
|
||||
|
||||
package android.net.metrics
|
||||
|
||||
import android.os.Parcelable
|
||||
import androidx.test.filters.SmallTest
|
||||
import androidx.test.runner.AndroidJUnit4
|
||||
import com.android.internal.util.ParcelableTestUtil
|
||||
import com.android.internal.util.TestUtils
|
||||
import com.android.testutils.assertParcelSane
|
||||
import org.junit.Assert.assertEquals
|
||||
import org.junit.Test
|
||||
import org.junit.runner.RunWith
|
||||
@@ -30,11 +28,6 @@ private const val NO_LIFETIME: Long = -1L
|
||||
@RunWith(AndroidJUnit4::class)
|
||||
@SmallTest
|
||||
class RaEventTest {
|
||||
private fun <T: Parcelable> testParcel(obj: T, fieldCount: Int) {
|
||||
ParcelableTestUtil.assertFieldCountEquals(fieldCount, obj::class.java)
|
||||
TestUtils.assertParcelingIsLossless(obj)
|
||||
}
|
||||
|
||||
@Test
|
||||
fun testConstructorAndParcel() {
|
||||
var raEvent = RaEvent.Builder().build()
|
||||
@@ -74,6 +67,6 @@ class RaEventTest {
|
||||
assertEquals(5, raEvent.rdnssLifetime)
|
||||
assertEquals(6, raEvent.dnsslLifetime)
|
||||
|
||||
testParcel(raEvent, 6)
|
||||
assertParcelSane(raEvent, 6)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -16,11 +16,9 @@
|
||||
|
||||
package android.net.metrics
|
||||
|
||||
import android.os.Parcelable
|
||||
import androidx.test.filters.SmallTest
|
||||
import androidx.test.runner.AndroidJUnit4
|
||||
import com.android.internal.util.ParcelableTestUtil
|
||||
import com.android.internal.util.TestUtils
|
||||
import com.android.testutils.assertParcelSane
|
||||
import java.lang.reflect.Modifier
|
||||
import org.junit.Assert.assertEquals
|
||||
import org.junit.Assert.assertTrue
|
||||
@@ -33,11 +31,6 @@ private const val REVALIDATION: Int = 2 shl 8
|
||||
@RunWith(AndroidJUnit4::class)
|
||||
@SmallTest
|
||||
class ValidationProbeEventTest {
|
||||
private fun <T: Parcelable> testParcel(obj: T, fieldCount: Int) {
|
||||
ParcelableTestUtil.assertFieldCountEquals(fieldCount, obj::class.java)
|
||||
TestUtils.assertParcelingIsLossless(obj)
|
||||
}
|
||||
|
||||
private infix fun Int.hasType(type: Int) = (type and this) == type
|
||||
|
||||
@Test
|
||||
@@ -58,7 +51,7 @@ class ValidationProbeEventTest {
|
||||
assertTrue(validationProbeEvent.probeType hasType FIRST_VALIDATION)
|
||||
assertEquals(ValidationProbeEvent.DNS_SUCCESS, validationProbeEvent.returnCode)
|
||||
|
||||
testParcel(validationProbeEvent, 3)
|
||||
assertParcelSane(validationProbeEvent, 3)
|
||||
}
|
||||
|
||||
@Test
|
||||
|
||||
Reference in New Issue
Block a user