ifupdown-ng/tests/ifquery_test
Ariadne Conill 49dd8942f2 tests: add inheritance tests
we only need to test ifquery, as this is just a merge
operation.
2020-08-04 12:06:39 -06:00

107 lines
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
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
}