diff options
author | evitayan <evitayan@google.com> | 2019-10-14 16:38:28 -0700 |
---|---|---|
committer | evitayan <evitayan@google.com> | 2019-10-17 18:29:36 -0700 |
commit | baed2e356dabf6b79a5321a8a6ba480dc577e782 (patch) | |
tree | 38fd172de05cfea62e423e6e4f6cc636a1ba827c /tests/iketests/src/java | |
parent | 3a793e9334d27db22d3495a3e2f74817b3a5cd52 (diff) | |
download | ike-baed2e356dabf6b79a5321a8a6ba480dc577e782.tar.gz |
Implement Config Attribute for DHCPv4 server
Bug: 140644912
Test: atest FrameworksIkeTests(new tests added)
Change-Id: I63d76d2863382d3b992092cb7cae90fab8066f2e
Diffstat (limited to 'tests/iketests/src/java')
-rw-r--r-- | tests/iketests/src/java/com/android/ike/ikev2/message/IkeConfigPayloadTest.java | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/tests/iketests/src/java/com/android/ike/ikev2/message/IkeConfigPayloadTest.java b/tests/iketests/src/java/com/android/ike/ikev2/message/IkeConfigPayloadTest.java index 78493247..e8a67d79 100644 --- a/tests/iketests/src/java/com/android/ike/ikev2/message/IkeConfigPayloadTest.java +++ b/tests/iketests/src/java/com/android/ike/ikev2/message/IkeConfigPayloadTest.java @@ -17,6 +17,7 @@ package com.android.ike.ikev2.message; import static com.android.ike.ikev2.message.IkeConfigPayload.CONFIG_ATTR_INTERNAL_IP4_ADDRESS; +import static com.android.ike.ikev2.message.IkeConfigPayload.CONFIG_ATTR_INTERNAL_IP4_DHCP; import static com.android.ike.ikev2.message.IkeConfigPayload.CONFIG_ATTR_INTERNAL_IP4_DNS; import static com.android.ike.ikev2.message.IkeConfigPayload.CONFIG_ATTR_INTERNAL_IP4_NETMASK; import static com.android.ike.ikev2.message.IkeConfigPayload.CONFIG_ATTR_INTERNAL_IP4_SUBNET; @@ -47,6 +48,7 @@ import com.android.ike.ikev2.message.IkeConfigPayload.ConfigAttrIpv4AddressBase; import com.android.ike.ikev2.message.IkeConfigPayload.ConfigAttrIpv6AddrRangeBase; import com.android.ike.ikev2.message.IkeConfigPayload.ConfigAttribute; import com.android.ike.ikev2.message.IkeConfigPayload.ConfigAttributeIpv4Address; +import com.android.ike.ikev2.message.IkeConfigPayload.ConfigAttributeIpv4Dhcp; import com.android.ike.ikev2.message.IkeConfigPayload.ConfigAttributeIpv4Dns; import com.android.ike.ikev2.message.IkeConfigPayload.ConfigAttributeIpv4Netmask; import com.android.ike.ikev2.message.IkeConfigPayload.ConfigAttributeIpv4Subnet; @@ -104,6 +106,13 @@ public final class IkeConfigPayloadTest { private static final byte[] IPV4_DNS_ATTRIBUTE_WITHOUT_VALUE = TestUtils.hexStringToByteArray("00030000"); + private static final Inet4Address IPV4_DHCP = + (Inet4Address) (InetAddressUtils.parseNumericAddress("192.0.2.200")); + private static final byte[] IPV4_DHCP_ATTRIBUTE_WITH_VALUE = + TestUtils.hexStringToByteArray("00060004c00002c8"); + private static final byte[] IPV4_DHCP_ATTRIBUTE_WITHOUT_VALUE = + TestUtils.hexStringToByteArray("00060000"); + private static final byte[] IPV4_SUBNET_ATTRIBUTE_VALUE = TestUtils.hexStringToByteArray("c0000264fffffff0"); private static final byte[] IPV4_SUBNET_ATTRIBUTE_WITH_VALUE = @@ -420,6 +429,44 @@ public final class IkeConfigPayloadTest { } @Test + public void testDecodeIpv4DhcpWithValue() throws Exception { + ConfigAttributeIpv4Dhcp attribute = new ConfigAttributeIpv4Dhcp(IPV4_DHCP.getAddress()); + + assertEquals(CONFIG_ATTR_INTERNAL_IP4_DHCP, attribute.attributeType); + assertEquals(IPV4_DHCP, attribute.address); + } + + @Test + public void testDecodeIpv4DhcpWithoutValue() throws Exception { + ConfigAttributeIpv4Dhcp attribute = new ConfigAttributeIpv4Dhcp(new byte[0]); + + assertEquals(CONFIG_ATTR_INTERNAL_IP4_DHCP, attribute.attributeType); + assertNull(attribute.address); + } + + @Test + public void testEncodeIpv4DhcpWithValue() throws Exception { + ConfigAttributeIpv4Dhcp attributeIp4Dhcp = new ConfigAttributeIpv4Dhcp(IPV4_DHCP); + + verifyEncodeIpv4AddresBaseAttribute( + attributeIp4Dhcp, + CONFIG_ATTR_INTERNAL_IP4_DHCP, + IPV4_DHCP_ATTRIBUTE_WITH_VALUE, + IPV4_DHCP); + } + + @Test + public void testEncodeIpv4DhcpWithoutValue() throws Exception { + ConfigAttributeIpv4Dhcp attribute = new ConfigAttributeIpv4Dhcp(); + + verifyEncodeIpv4AddresBaseAttribute( + attribute, + CONFIG_ATTR_INTERNAL_IP4_DHCP, + IPV4_DHCP_ATTRIBUTE_WITHOUT_VALUE, + null /*expectedAddress*/); + } + + @Test public void testDecodeIpv4SubnetWithValue() throws Exception { ConfigAttributeIpv4Subnet attributeIp4Subnet = new ConfigAttributeIpv4Subnet(IPV4_SUBNET_ATTRIBUTE_VALUE); |