ifupdown-ng/tests/ifquery_test
2020-08-20 02:33:51 -06:00

188 lines
5.3 KiB
Text
Executable file

#!/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 \
ppp_dependency \
ppp_legacy_rewrite \
tunnel_dependency \
tunnel_legacy_dependency \
tunnel_legacy_rewrite \
tunnel_ifupdown2_dependency \
tunnel_ifupdown2_rewrite \
gre_dependency
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
}
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
}