Module Name: src
Committed By: ozaki-r
Date: Thu May 18 06:33:49 UTC 2017
Modified Files:
src/tests/net/carp: t_basic.sh
Log Message:
Reduce duplicated codes (DRY)
To generate a diff of this commit:
cvs rdiff -u -r1.4 -r1.5 src/tests/net/carp/t_basic.sh
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/tests/net/carp/t_basic.sh
diff -u src/tests/net/carp/t_basic.sh:1.4 src/tests/net/carp/t_basic.sh:1.5
--- src/tests/net/carp/t_basic.sh:1.4 Mon Feb 27 08:26:53 2017
+++ src/tests/net/carp/t_basic.sh Thu May 18 06:33:49 2017
@@ -1,4 +1,4 @@
-# $NetBSD: t_basic.sh,v 1.4 2017/02/27 08:26:53 ozaki-r Exp $
+# $NetBSD: t_basic.sh,v 1.5 2017/05/18 06:33:49 ozaki-r Exp $
#
# Copyright (c) 2017 Internet Initiative Japan Inc.
# All rights reserved.
@@ -31,21 +31,7 @@ SOCK_BACKUP=unix://carp_backup
BUS=bus_carp
TIMEOUT=3
-atf_test_case carp_handover_halt cleanup
-carp_handover_head()
-{
-
- atf_set "descr" "Tests for CARP handover on halt"
- atf_set "require.progs" "rump_server"
-}
-
-atf_test_case carp_handover_ifdown cleanup
-carp_handover_head()
-{
-
- atf_set "descr" "Tests for CARP handover on ifconfig down"
- atf_set "require.progs" "rump_server"
-}
+DEBUG=${DEBUG:-false}
IP_CLIENT=10.1.1.240
IP_MASTER=10.1.1.1
@@ -103,7 +89,7 @@ wait_handover()
fi
}
-test_carp_handover()
+test_carp_handover_ipv4()
{
local op=$1
@@ -172,48 +158,6 @@ test_carp_handover()
fi
}
-carp_handover_halt_body()
-{
-
- test_carp_handover halt
-}
-
-carp_handover_ifdown_body()
-{
-
- test_carp_handover ifdown
-}
-
-carp_handover_halt_cleanup()
-{
-
- $DEBUG && dump
- cleanup
-}
-
-carp_handover_ifdown_cleanup()
-{
-
- $DEBUG && dump
- cleanup
-}
-
-atf_test_case carp6_handover_halt cleanup
-carp6_handover_halt_head()
-{
-
- atf_set "descr" "Tests for CARP handover on halt (IPv6)"
- atf_set "require.progs" "rump_server"
-}
-
-atf_test_case carp6_handover_ifdown cleanup
-carp6_handover_ifdown_head()
-{
-
- atf_set "descr" "Tests for CARP handover on ifconfig down (IPv6)"
- atf_set "require.progs" "rump_server"
-}
-
IP6_CLIENT=fd00:1::240
IP6_MASTER=fd00:1::1
IP6_BACKUP=fd00:1::2
@@ -269,7 +213,7 @@ wait_carp6_handover()
fi
}
-test_carp6_handover()
+test_carp_handover_ipv6()
{
local op=$1
@@ -338,37 +282,41 @@ test_carp6_handover()
fi
}
-carp6_handover_halt_body()
+add_test_case()
{
+ local ipproto=$1
+ local halt=$2
- test_carp6_handover halt
-}
+ name="carp_handover_${ipproto}_${halt}"
+ desc="Tests for CARP (${ipproto}) handover on ${halt}"
-carp6_handover_ifdown_body()
-{
-
- test_carp6_handover ifdown
-}
-
-carp6_handover_halt_cleanup()
-{
-
- $DEBUG && dump
- cleanup
-}
-
-carp6_handover_ifdown_cleanup()
-{
-
- $DEBUG && dump
- cleanup
+ atf_test_case ${name} cleanup
+ eval " \
+ ${name}_head() { \
+ atf_set \"descr\" \"$desc\"; \
+ atf_set \"require.progs\" \"rump_server\"; \
+ }; \
+ ${name}_body() { \
+ test_carp_handover_${ipproto} $halt; \
+ if [ $halt != halt ]; then \
+ rump_server_destroy_ifaces; \
+ fi \
+ }; \
+ ${name}_cleanup() { \
+ $DEBUG && dump; \
+ cleanup; \
+ } \
+ "
+ atf_add_test_case ${name}
}
atf_init_test_cases()
{
+ local proto= halt=
- atf_add_test_case carp_handover_halt
- atf_add_test_case carp_handover_ifdown
- atf_add_test_case carp6_handover_halt
- atf_add_test_case carp6_handover_ifdown
+ for proto in ipv4 ipv6; do
+ for halt in halt ifdown; do
+ add_test_case $proto $halt
+ done
+ done
}