#!/usr/bin/env atf-sh . $(atf_get_srcdir)/test_env.sh tests_init \ noargs \ loopback_always_configured \ static_dual_stack \ static_ipv4 \ static_ipv6 \ dhcp_ipv4 \ use_dhcp \ state_query_home \ state_query_work \ state_print \ learned_dependency \ learned_dependency_2 \ learned_executor \ inheritance_0 \ inheritance_1 \ implicit_vlan \ vrf_dependency \ vrf_ifupdown2_rewrite \ vrf_ifupdown2_dependency \ vrf_implicit_static_gateway \ ppp_dependency \ ppp_legacy_rewrite \ tunnel_dependency \ tunnel_legacy_dependency \ tunnel_legacy_rewrite \ tunnel_ifupdown2_dependency \ tunnel_ifupdown2_rewrite \ gre_dependency \ vlan_explicit_learned_dependency \ vlan_guessed_learned_dependency \ vlan_complex_learned_dependency \ wireguard noargs_body() { atf_check -s exit:1 -e ignore ifquery -S/dev/null } loopback_always_configured_body() { atf_check -s exit:0 -o match:"use loopback" \ ifquery -S/dev/null -i $FIXTURES/static-eth0.interfaces lo } static_dual_stack_body() { atf_check -s exit:0 -o match:"address 203.0.113.2/24" \ -o match:"address 2001:db8:1000:2::2/64" \ -o match:"gateway 203.0.113.1" \ -o match:"gateway 2001:db8:1000:2::1" \ ifquery -S/dev/null -i $FIXTURES/static-eth0.interfaces eth0 } static_ipv4_body() { atf_check -s exit:0 -o match:"address 203.0.113.2/24" \ -o match:"gateway 203.0.113.1" \ ifquery -S/dev/null -i $FIXTURES/static-eth0-v4.interfaces eth0 } static_ipv6_body() { atf_check -s exit:0 -o match:"address 2001:db8:1000:2::2/64" \ -o match:"gateway 2001:db8:1000:2::1" \ ifquery -S/dev/null -i $FIXTURES/static-eth0-v6.interfaces eth0 } dhcp_ipv4_body() { atf_check -s exit:0 -o match:"use dhcp" \ ifquery -S/dev/null -i $FIXTURES/dhcp-eth0.interfaces eth0 } use_dhcp_body() { atf_check -s exit:0 -o match:"use dhcp" \ ifquery -S/dev/null -i $FIXTURES/use-dhcp-eth0.interfaces eth0 } state_query_home_body() { atf_check -s exit:0 -o match:"iface home" \ ifquery -S $FIXTURES/alias-home.ifstate -i $FIXTURES/alias-home-work.interfaces wlan0 } state_query_work_body() { atf_check -s exit:0 -o match:"iface work" \ ifquery -S $FIXTURES/alias-work.ifstate -i $FIXTURES/alias-home-work.interfaces wlan0 } state_print_body() { atf_check -s exit:0 -o match:"wlan0=home" \ ifquery -S $FIXTURES/alias-home.ifstate -i $FIXTURES/alias-home-work.interfaces -s atf_check -s exit:0 -o match:"wlan0=work" \ ifquery -S $FIXTURES/alias-work.ifstate -i $FIXTURES/alias-home-work.interfaces -s } learned_dependency_body() { atf_check -s exit:0 -o match:"requires eth0 eth1 eth2 eth3 eth4" \ ifquery -E $EXECUTORS -i $FIXTURES/mock-dependency-generator.interfaces br0 } learned_dependency_2_body() { atf_check -s exit:0 -o match:"requires bond0" \ ifquery -E $EXECUTORS -i $FIXTURES/mock-dependency-generator-2.interfaces br0 } learned_executor_body() { atf_check -s exit:0 -o match:"use mock" \ ifquery -E $EXECUTORS -i $FIXTURES/mock-dependency-generator-2.interfaces br0 } inheritance_0_body() { atf_check -s exit:0 -o match:"inherit base0" \ -o match:"address 203.0.113.2/24" \ -o match:"address 203.0.113.3/24" \ -o match:"address 2001:db8:1000:2::2/64" \ ifquery -E $EXECUTORS -i $FIXTURES/inheritance.interfaces inherit0 } inheritance_1_body() { atf_check -s exit:0 -o match:"inherit base0" \ -o match:"address 203.0.113.2/24" \ -o match:"address 203.0.113.4/24" \ -o match:"address 2001:db8:1000:2::2/64" \ ifquery -E $EXECUTORS -i $FIXTURES/inheritance.interfaces inherit1 } implicit_vlan_body() { atf_check -s exit:0 -o match:"requires eth0" \ -o match:"use vlan" \ ifquery -E $EXECUTORS -i $FIXTURES/vlan.interfaces eth0.8 } vrf_dependency_body() { atf_check -s exit:0 -o match:"requires vrf-red" \ ifquery -E $EXECUTORS_LINUX -i $FIXTURES/vrf.interfaces eth0 } vrf_ifupdown2_rewrite_body() { atf_check -s exit:0 -o match:"vrf-member vrf-red" \ ifquery -E $EXECUTORS -i $FIXTURES/vrf-ifupdown2.interfaces eth0 } vrf_ifupdown2_dependency_body() { atf_check -s exit:0 -o match:"requires vrf-red" \ ifquery -E $EXECUTORS_LINUX -i $FIXTURES/vrf-ifupdown2.interfaces eth0 } vrf_implicit_static_gateway_body() { atf_check -s exit:0 -o match:"use static" \ ifquery -E $EXECUTORS_LINUX -i $FIXTURES/vrf.interfaces vrf-red } ppp_dependency_body() { atf_check -s exit:0 -o match:"requires eth0" \ ifquery -E $EXECUTORS_LINUX -i $FIXTURES/ppp.interfaces ppp0 } ppp_legacy_rewrite_body() { atf_check -s exit:0 -o match:"ppp-provider someisp" \ ifquery -E $EXECUTORS_LINUX -i $FIXTURES/ppp-legacy.interfaces ppp0 } tunnel_dependency_body() { atf_check -s exit:0 -o match:"requires eth0" \ ifquery -E $EXECUTORS_LINUX -i $FIXTURES/tunnel.interfaces tun0 } tunnel_legacy_dependency_body() { atf_check -s exit:0 -o match:"requires eth0" \ ifquery -E $EXECUTORS_LINUX -i $FIXTURES/tunnel-legacy.interfaces tun0 } tunnel_ifupdown2_dependency_body() { atf_check -s exit:0 -o match:"requires eth0" \ ifquery -E $EXECUTORS_LINUX -i $FIXTURES/tunnel-ifupdown2.interfaces tun0 } tunnel_legacy_rewrite_body() { atf_check -s exit:0 \ -o match:"tunnel-local 203.0.113.2" \ -o match:"tunnel-remote 203.0.113.1" \ -o match:"tunnel-mode gre" \ -o match:"tunnel-ttl 255" \ ifquery -E $EXECUTORS_LINUX -i $FIXTURES/tunnel-legacy.interfaces tun0 } tunnel_ifupdown2_rewrite_body() { atf_check -s exit:0 \ -o match:"tunnel-local 203.0.113.2" \ -o match:"tunnel-remote 203.0.113.1" \ -o match:"tunnel-mode gre" \ -o match:"tunnel-ttl 255" \ ifquery -E $EXECUTORS_LINUX -i $FIXTURES/tunnel-ifupdown2.interfaces tun0 } gre_dependency_body() { atf_check -s exit:0 -o match:"requires eth0" \ ifquery -E $EXECUTORS_LINUX -i $FIXTURES/gre.interfaces tun0 } vlan_explicit_learned_dependency_body() { atf_check -s exit:0 -o match:"requires eth0" \ -o match:"use vlan" \ ifquery -E $EXECUTORS_LINUX -i $FIXTURES/vlan-named.interfaces servers } vlan_guessed_learned_dependency_body() { atf_check -s exit:0 -o match:"requires eth0" \ -o match:"use vlan" \ ifquery -E $EXECUTORS_LINUX -i $FIXTURES/vlan.interfaces eth0.8 } vlan_complex_learned_dependency_body() { atf_check -s exit:0 -o match:"requires eth0" \ -o match:"use vlan" \ -o match:"address 1.2.10.4/24" \ -o match:"gateway 1.2.10.1" \ -o match:"address abcd:ef12:3456:10::4/64" \ -o match:"gateway abcd:ef12:3456:10::1" \ -o match:"vlan-raw-device eth0" \ ifquery -E $EXECUTORS_LINUX -i $FIXTURES/vlan-complex.interfaces servers } wireguard_body() { atf_check -s exit:0 \ -o match:"requires eth0" \ -o match:"use wireguard" \ ifquery -E $EXECUTORS_LINUX -i $FIXTURES/wireguard.interfaces wg0 }