Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src/tests/net/route Add some tests for route change



details:   https://anonhg.NetBSD.org/src/rev/f587943b9e60
branches:  trunk
changeset: 816741:f587943b9e60
user:      ozaki-r <ozaki-r%NetBSD.org@localhost>
date:      Thu Jul 21 02:02:30 2016 +0000

description:
Add some tests for route change

diffstat:

 tests/net/route/t_change.sh |  242 +++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 240 insertions(+), 2 deletions(-)

diffs (267 lines):

diff -r f685deef2c7b -r f587943b9e60 tests/net/route/t_change.sh
--- a/tests/net/route/t_change.sh       Thu Jul 21 01:56:54 2016 +0000
+++ b/tests/net/route/t_change.sh       Thu Jul 21 02:02:30 2016 +0000
@@ -1,4 +1,4 @@
-#      $NetBSD: t_change.sh,v 1.6 2016/07/21 01:56:54 ozaki-r Exp $
+#      $NetBSD: t_change.sh,v 1.7 2016/07/21 02:02:30 ozaki-r Exp $
 #
 # Copyright (c) 2011 The NetBSD Foundation, Inc.
 # All rights reserved.
@@ -26,9 +26,11 @@
 #
 
 netserver=\
-"rump_server -lrumpnet -lrumpnet_net -lrumpnet_netinet"
+"rump_server -lrumpnet -lrumpnet_net -lrumpnet_netinet -lrumpnet_shmif"
 export RUMP_SERVER=unix://commsock
 
+DEBUG=false
+
 atf_test_case route_change_reject2blackhole cleanup
 route_change_reject2blackhole_head()
 {
@@ -58,8 +60,244 @@
        env RUMP_SERVER=unix://commsock rump.halt
 }
 
+atf_test_case route_change_gateway cleanup
+route_change_gateway_head()
+{
+
+       atf_set "descr" "Change the gateway of a route"
+       atf_set "require.progs" "rump_server"
+}
+
+route_change_gateway_body()
+{
+
+       atf_check -s exit:0 ${netserver} ${RUMP_SERVER}
+
+       atf_check -s exit:0 rump.ifconfig shmif0 create
+       atf_check -s exit:0 rump.ifconfig shmif0 linkstr bus
+       atf_check -s exit:0 rump.ifconfig shmif0 10.0.0.10/24 up
+
+       atf_check -s exit:0 -o ignore \
+           rump.route add -net 192.168.0.0/24 10.0.0.1
+       atf_check -s exit:0 -o match:'10.0.0.1' -x \
+           "rump.route -n show -inet | grep ^192.168"
+       atf_check -s exit:0 -o ignore \
+           rump.route change -net 192.168.0.0/24 10.0.0.254
+       atf_check -s exit:0 -o match:'10.0.0.254' -x \
+           "rump.route -n show -inet | grep ^192.168"
+}
+
+route_change_gateway_cleanup()
+{
+
+       env RUMP_SERVER=unix://commsock rump.halt
+}
+
+atf_test_case route_change_ifa cleanup
+route_change_ifa_head()
+{
+
+       atf_set "descr" "Change the ifa (local address) of a route"
+       atf_set "require.progs" "rump_server"
+}
+
+route_change_ifa_body()
+{
+
+       atf_check -s exit:0 ${netserver} ${RUMP_SERVER}
+
+       atf_check -s exit:0 rump.ifconfig shmif0 create
+       atf_check -s exit:0 rump.ifconfig shmif0 linkstr bus
+       atf_check -s exit:0 rump.ifconfig shmif0 10.0.0.10/24
+       atf_check -s exit:0 rump.ifconfig shmif0 alias 10.0.0.11/24
+       atf_check -s exit:0 rump.ifconfig shmif0 up
+
+       atf_check -s exit:0 -o ignore \
+           rump.route add -net 192.168.0.0/24 10.0.0.1
+       atf_check -s exit:0 -o match:'10.0.0.1' -x \
+           "rump.route -n show -inet | grep ^192.168"
+       $DEBUG && rump.route -n show -inet
+       cat >./expect <<-EOF
+   route to: 192.168.0.1
+destination: 192.168.0.0
+       mask: 255.255.255.0
+    gateway: 10.0.0.1
+ local addr: 10.0.0.10
+  interface: shmif0
+      flags: <UP,GATEWAY,DONE,STATIC>
+ recvpipe  sendpipe  ssthresh  rtt,msec    rttvar  hopcount      mtu     expire
+       EOF
+       rump.route -n get 192.168.0.1 > ./output
+       $DEBUG && cat ./expect ./output
+       sed -i '$d' ./output
+       atf_check -s exit:0 diff ./expect ./output
+
+       # Change the local address of the route
+       atf_check -s exit:0 -o ignore \
+           rump.route change -net 192.168.0.0/24 10.0.0.1 -ifa 10.0.0.11
+       $DEBUG && rump.route -n show -inet
+       cat >./expect <<-EOF
+   route to: 192.168.0.1
+destination: 192.168.0.0
+       mask: 255.255.255.0
+    gateway: 10.0.0.1
+ local addr: 10.0.0.11
+  interface: shmif0
+      flags: <UP,GATEWAY,DONE,STATIC>
+ recvpipe  sendpipe  ssthresh  rtt,msec    rttvar  hopcount      mtu     expire
+       EOF
+       rump.route -n get 192.168.0.1 > ./output
+       $DEBUG && cat ./expect ./output
+       sed -i '$d' ./output
+       atf_check -s exit:0 diff ./expect ./output
+}
+
+route_change_ifa_cleanup()
+{
+
+       env RUMP_SERVER=unix://commsock rump.halt
+}
+
+atf_test_case route_change_ifp cleanup
+route_change_ifp_head()
+{
+
+       atf_set "descr" "Change a route based on an interface (ifp)"
+       atf_set "require.progs" "rump_server"
+}
+
+route_change_ifp_body()
+{
+
+       atf_check -s exit:0 ${netserver} ${RUMP_SERVER}
+
+       atf_check -s exit:0 rump.ifconfig shmif0 create
+       atf_check -s exit:0 rump.ifconfig shmif0 linkstr bus
+       atf_check -s exit:0 rump.ifconfig shmif0 10.0.0.10/24 up
+
+       atf_check -s exit:0 rump.ifconfig shmif1 create
+       atf_check -s exit:0 rump.ifconfig shmif1 linkstr bus
+       atf_check -s exit:0 rump.ifconfig shmif1 10.0.0.11/24 up
+
+       atf_check -s exit:0 -o ignore \
+           rump.route add -net 192.168.0.0/24 10.0.0.1
+       atf_check -s exit:0 -o match:'10.0.0.1' -x \
+           "rump.route -n show -inet | grep ^192.168"
+       $DEBUG && rump.route -n show -inet
+       cat >./expect <<-EOF
+   route to: 192.168.0.1
+destination: 192.168.0.0
+       mask: 255.255.255.0
+    gateway: 10.0.0.1
+ local addr: 10.0.0.10
+  interface: shmif0
+      flags: <UP,GATEWAY,DONE,STATIC>
+ recvpipe  sendpipe  ssthresh  rtt,msec    rttvar  hopcount      mtu     expire
+       EOF
+       rump.route -n get 192.168.0.1 > ./output
+       $DEBUG && cat ./expect ./output
+       sed -i '$d' ./output
+       atf_check -s exit:0 diff ./expect ./output
+
+       # Change a route based on an interface
+       atf_check -s exit:0 -o ignore \
+           rump.route change -net 192.168.0.0/24 10.0.0.1 -ifp shmif1
+       $DEBUG && rump.route -n show -inet
+       cat >./expect <<-EOF
+   route to: 192.168.0.1
+destination: 192.168.0.0
+       mask: 255.255.255.0
+    gateway: 10.0.0.1
+ local addr: 10.0.0.11
+  interface: shmif1
+      flags: <UP,GATEWAY,DONE,STATIC>
+ recvpipe  sendpipe  ssthresh  rtt,msec    rttvar  hopcount      mtu     expire
+       EOF
+       rump.route -n get 192.168.0.1 > ./output
+       $DEBUG && cat ./expect ./output
+       sed -i '$d' ./output
+       atf_check -s exit:0 diff ./expect ./output
+}
+
+route_change_ifp_cleanup()
+{
+
+       env RUMP_SERVER=unix://commsock rump.halt
+}
+
+atf_test_case route_change_ifp_ifa cleanup
+route_change_ifp_head()
+{
+
+       atf_set "descr" "Change a route with -ifp and -ifa"
+       atf_set "require.progs" "rump_server"
+}
+
+route_change_ifp_ifa_body()
+{
+
+       atf_check -s exit:0 ${netserver} ${RUMP_SERVER}
+
+       atf_check -s exit:0 rump.ifconfig shmif0 create
+       atf_check -s exit:0 rump.ifconfig shmif0 linkstr bus
+       atf_check -s exit:0 rump.ifconfig shmif0 10.0.0.10/24 up
+
+       atf_check -s exit:0 rump.ifconfig shmif1 create
+       atf_check -s exit:0 rump.ifconfig shmif1 linkstr bus
+       atf_check -s exit:0 rump.ifconfig shmif1 10.0.0.11/24 up
+
+       atf_check -s exit:0 -o ignore \
+           rump.route add -net 192.168.0.0/24 10.0.0.1
+       atf_check -s exit:0 -o match:'10.0.0.1' -x \
+           "rump.route -n show -inet | grep ^192.168"
+       $DEBUG && rump.route -n show -inet
+       cat >./expect <<-EOF
+   route to: 192.168.0.1
+destination: 192.168.0.0
+       mask: 255.255.255.0
+    gateway: 10.0.0.1
+ local addr: 10.0.0.10
+  interface: shmif0
+      flags: <UP,GATEWAY,DONE,STATIC>
+ recvpipe  sendpipe  ssthresh  rtt,msec    rttvar  hopcount      mtu     expire
+       EOF
+       rump.route -n get 192.168.0.1 > ./output
+       $DEBUG && cat ./expect ./output
+       sed -i '$d' ./output
+       atf_check -s exit:0 diff ./expect ./output
+
+       # Change a route with -ifa and -ifp
+       atf_check -s exit:0 -o ignore \
+           rump.route change -net 192.168.0.0/24 -ifa 10.0.0.1 -ifp shmif1
+       $DEBUG && rump.route -n show -inet
+       cat >./expect <<-EOF
+   route to: 192.168.0.1
+destination: 192.168.0.0
+       mask: 255.255.255.0
+    gateway: 10.0.0.1
+ local addr: 10.0.0.11
+  interface: shmif1
+      flags: <UP,GATEWAY,DONE,STATIC>
+ recvpipe  sendpipe  ssthresh  rtt,msec    rttvar  hopcount      mtu     expire
+       EOF
+       rump.route -n get 192.168.0.1 > ./output
+       $DEBUG && cat ./expect ./output
+       sed -i '$d' ./output
+       atf_check -s exit:0 diff ./expect ./output
+}
+
+route_change_ifp_ifa_cleanup()
+{
+
+       env RUMP_SERVER=unix://commsock rump.halt
+}
+
 atf_init_test_cases()
 {
 
        atf_add_test_case route_change_reject2blackhole
+       atf_add_test_case route_change_gateway
+       atf_add_test_case route_change_ifa
+       atf_add_test_case route_change_ifp
+       atf_add_test_case route_change_ifp_ifa
 }



Home | Main Index | Thread Index | Old Index