diff options
author | Dan Williams <dcbw@redhat.com> | 2014-06-17 18:55:05 -0500 |
---|---|---|
committer | Dan Williams <dcbw@redhat.com> | 2014-06-17 18:55:32 -0500 |
commit | 874b33eff2b5e5a2bb837ec6c30a0737ab9134eb (patch) | |
tree | bfc3621242a0f64e8ac5ebbf13f74d8c1a329288 | |
parent | ac6f56172b0f85cf338741b0807791265bb865ca (diff) | |
download | NetworkManager-dcbw/ifcfg-rh-test-cleanup.tar.gz |
ifcfg-rh: add testcase for manual IPV6 without IPV6_AUTOdcbw/ifcfg-rh-test-cleanup
3 files changed, 55 insertions, 0 deletions
diff --git a/src/settings/plugins/ifcfg-rh/tests/network-scripts/Makefile.am b/src/settings/plugins/ifcfg-rh/tests/network-scripts/Makefile.am index 10ebcc91f8..3753333d58 100644 --- a/src/settings/plugins/ifcfg-rh/tests/network-scripts/Makefile.am +++ b/src/settings/plugins/ifcfg-rh/tests/network-scripts/Makefile.am @@ -74,6 +74,7 @@ EXTRA_DIST = \ ifcfg-test-wired-ipv4-manual-4 \ ifcfg-test-wired-ipv6-manual \ route6-test-wired-ipv6-manual \ + ifcfg-test-wired-ipv6-manual2 \ ifcfg-test-wired-static-no-prefix-8 \ ifcfg-test-wired-static-no-prefix-16 \ ifcfg-test-wired-static-no-prefix-24 \ diff --git a/src/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-wired-ipv6-manual2 b/src/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-wired-ipv6-manual2 new file mode 100644 index 0000000000..2bb3eb49cf --- /dev/null +++ b/src/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-wired-ipv6-manual2 @@ -0,0 +1,18 @@ +DEVICE=enccw0.0.fb00 +Name=enccw0.0.fb00 +ONBOOT=yes +NETBOOT=yes +BOOTPROTO=none +UUID="fe96e722-5723-3db9-52c4-6ba3e40b8b75" +SUBCHANNELS=0.0.fb00,0.0.fb01,0.0.fb02 +PORTNAME=OSAPORT +NETTYPE=qeth +LAYER2=0 +TYPE=Ethernet +OPTIONS="" +IPADDR=10.30.23.5 +NETMASK=255.255.0.0 +IPV6INIT=yes +IPV6ADDR=fd00:10:30::23:5/80 + + diff --git a/src/settings/plugins/ifcfg-rh/tests/test-ifcfg-rh.c b/src/settings/plugins/ifcfg-rh/tests/test-ifcfg-rh.c index 416e7346c1..efec9bf0b1 100644 --- a/src/settings/plugins/ifcfg-rh/tests/test-ifcfg-rh.c +++ b/src/settings/plugins/ifcfg-rh/tests/test-ifcfg-rh.c @@ -1407,6 +1407,41 @@ test_read_wired_ipv6_manual (void) g_object_unref (connection); } +static void +test_read_wired_ipv6_manual2 (void) +{ + NMConnection *connection; + NMSettingIP6Config *s_ip6; + GError *error = NULL; + const char *expected_address1 = "fd00:10:30::23:5"; + NMIP6Address *ip6_addr; + struct in6_addr addr; + gboolean success; + + connection = connection_from_file (TEST_IFCFG_DIR"/network-scripts/ifcfg-test-wired-ipv6-manual2", + NULL, TYPE_ETHERNET, NULL, NULL, NULL, NULL, NULL, &error, NULL); + g_assert_no_error (error); + g_assert (connection); + success = nm_connection_verify (connection, &error); + g_assert_no_error (error); + g_assert (success); + + /* ===== IPv6 SETTING ===== */ + s_ip6 = nm_connection_get_setting_ip6_config (connection); + g_assert (s_ip6); + g_assert_cmpstr (nm_setting_ip6_config_get_method (s_ip6), ==, NM_SETTING_IP6_CONFIG_METHOD_MANUAL); + g_assert (nm_setting_ip6_config_get_never_default (s_ip6) == FALSE); + + g_assert_cmpint (nm_setting_ip6_config_get_num_addresses (s_ip6), ==, 1); + ip6_addr = nm_setting_ip6_config_get_address (s_ip6, 0); + g_assert (ip6_addr); + g_assert_cmpint (nm_ip6_address_get_prefix (ip6_addr), ==, 80); + g_assert (inet_pton (AF_INET6, expected_address1, &addr) > 0); + g_assert (IN6_ARE_ADDR_EQUAL (nm_ip6_address_get_address (ip6_addr), &addr)); + + g_object_unref (connection); +} + #define TEST_IFCFG_WIRED_IPV6_ONLY TEST_IFCFG_DIR"/network-scripts/ifcfg-test-wired-ipv6-only" static void @@ -13681,6 +13716,7 @@ int main (int argc, char **argv) g_test_add_data_func (TPATH "wired/ipv4-manual-3", &read_wired_ipv4_manual_info[2], test_read_wired_ipv4_manual); g_test_add_data_func (TPATH "wired/ipv4-manual-4", &read_wired_ipv4_manual_info[3], test_read_wired_ipv4_manual); test_read_wired_ipv6_manual (); + test_read_wired_ipv6_manual2 (); test_read_wired_ipv6_only (); test_read_wired_dhcp6_only (); test_read_onboot_no (); |