diff --git a/test/200_dns_test.sh b/test/200_dns_test.sh index 045cdacc..3a04ef45 100755 --- a/test/200_dns_test.sh +++ b/test/200_dns_test.sh @@ -4,6 +4,7 @@ C1=10.2.0.78 C2=10.2.0.34 +NAME=seetwo.weave.local start_suite "Resolve names on a single host" @@ -13,13 +14,9 @@ weave_on $HOST1 launch-dns 10.2.254.1/24 docker_on $HOST1 rm -f c1 c2 || true -weave_on $HOST1 run $C2/24 -t --name=c2 -h seetwo.weave.local ubuntu +weave_on $HOST1 run $C2/24 -t --name=c2 -h $NAME ubuntu weave_on $HOST1 run --with-dns $C1/24 -t --name=c1 aanand/docker-dnsutils /bin/sh -ok=$(exec_on $HOST1 c1 dig +short seetwo.weave.local) -assert "echo $ok" "$C2" - -ok=$(exec_on $HOST1 c1 dig +short -x $C2) -assert "echo $ok" "seetwo.weave.local." +assert_dns_record $HOST1 c1 $NAME $C2 end_suite diff --git a/test/210_dns_multicast_test.sh b/test/210_dns_multicast_test.sh index 2e72e262..9629c12f 100755 --- a/test/210_dns_multicast_test.sh +++ b/test/210_dns_multicast_test.sh @@ -4,6 +4,7 @@ C1=10.2.3.78 C2=10.2.3.34 +NAME=seetwo.weave.local start_suite "Resolve names across hosts" @@ -19,16 +20,11 @@ weave_on $HOST2 launch $HOST1 weave_on $HOST1 launch-dns 10.2.254.1/24 -debug weave_on $HOST2 launch-dns 10.2.254.2/24 -debug -weave_on $HOST2 run $C2/24 -t --name=c2 -h seetwo.weave.local ubuntu +weave_on $HOST2 run $C2/24 -t --name=c2 -h $NAME ubuntu weave_on $HOST1 run --with-dns $C1/24 --name=c1 -t aanand/docker-dnsutils /bin/sh -ok=$(exec_on $HOST1 c1 dig +short seetwo.weave.local) -assert "echo $ok" "$C2" +assert_dns_record $HOST1 c1 $NAME $C2 -ok=$(exec_on $HOST1 c1 dig +short -x $C2) -assert "echo $ok" "seetwo.weave.local." - -ok=$(exec_on $HOST1 c1 dig +short -x 8.8.8.8) -assert "test -n \"$ok\" && echo pass" "pass" +assert_raises "exec_on $HOST1 c1 getent hosts 8.8.8.8 | grep google" end_suite diff --git a/test/220_dns_custom_test.sh b/test/220_dns_custom_test.sh index 6ed56f04..94388f12 100755 --- a/test/220_dns_custom_test.sh +++ b/test/220_dns_custom_test.sh @@ -4,22 +4,20 @@ C1=10.2.56.34 C2=10.2.54.91 +DOMAIN=foo.bar +NAME=seetwo.$DOMAIN start_suite "Resolve names in custom domain" weave_on $HOST1 stop || true weave_on $HOST1 stop-dns || true -weave_on $HOST1 launch-dns 10.2.254.1/24 --domain foo.bar. +weave_on $HOST1 launch-dns 10.2.254.1/24 --domain $DOMAIN. docker_on $HOST1 rm -f c1 c2 || true -weave_on $HOST1 run $C2/24 -t --name=c2 -h seetwo.foo.bar ubuntu +weave_on $HOST1 run $C2/24 -t --name=c2 -h $NAME ubuntu weave_on $HOST1 run --with-dns $C1/24 -t --name=c1 aanand/docker-dnsutils /bin/sh -ok=$(exec_on $HOST1 c1 dig +short seetwo.foo.bar.) -assert "echo $ok" "$C2" - -ok=$(exec_on $HOST1 c1 dig +short -x $C2) -assert "echo $ok" "seetwo.foo.bar." +assert_dns_record $HOST1 c1 $NAME $C2 end_suite diff --git a/test/300_fallback_dns_test.sh b/test/300_fallback_dns_test.sh index 19e8cabd..8e665efb 100755 --- a/test/300_fallback_dns_test.sh +++ b/test/300_fallback_dns_test.sh @@ -10,10 +10,7 @@ docker_on $HOST1 rm -f c1 || true weave_on $HOST1 run --with-dns 10.2.1.5/24 --name=c1 -t aanand/docker-dnsutils /bin/sh -ok=$(exec_on $HOST1 c1 dig +short -t MX weave.works) -assert "test -n \"$ok\" && echo pass" "pass" - -ok=$(exec_on $HOST1 c1 dig +short -x 8.8.8.8) -assert "test -n \"$ok\" && echo pass" "pass" +assert_raises "exec_on $HOST1 c1 host -t mx weave.works | grep google" +assert_raises "exec_on $HOST1 c1 getent hosts 8.8.8.8 | grep google" end_suite diff --git a/test/400_weave_local_test.sh b/test/400_weave_local_test.sh index 2658a160..0b198951 100755 --- a/test/400_weave_local_test.sh +++ b/test/400_weave_local_test.sh @@ -11,8 +11,8 @@ assert_raises "docker_on $HOST1 ps | grep weave" 0 docker_on $HOST1 rm -f c1 || true run_on $HOST1 sudo ./weave --local run 10.2.6.5/24 -ti --name=c1 ubuntu -ok=$(exec_on $HOST1 c1 ifconfig | grep ethwe) -assert "test -n \"$ok\" && echo pass" "pass" + +assert_raises "exec_on $HOST1 c1 ifconfig | grep ethwe" docker_on $HOST1 rm -f c1 || true diff --git a/test/config.sh b/test/config.sh index c67896ba..02656018 100644 --- a/test/config.sh +++ b/test/config.sh @@ -88,6 +88,12 @@ exec_on() { docker -H tcp://$host:2375 exec $container "$@" } +# assert_dns_record +assert_dns_record() { + assert "exec_on $1 $2 getent hosts $3 | tr -s ' '" "$4 $3" + assert "exec_on $1 $2 getent hosts $4 | tr -s ' '" "$4 $3" +} + start_suite() { whitely echo $@ }