diff --git a/testdefs.sh b/testdefs.sh index 09db2093..476fb32d 100644 --- a/testdefs.sh +++ b/testdefs.sh @@ -648,7 +648,8 @@ start_servald_instances() { eval DUMMY$instance_name="\$DUMMYNET" done # Now wait until they see each other. - wait_until --sleep=0.25 instances_see_each_other "$@" + foreach "$@" \ + wait_until --sleep=0.25 has_seen_instances "$@" tfw_log "# dummynet file:" $(ls -l $DUMMYNET) pop_instance } @@ -675,12 +676,13 @@ assert_peers_are_instances() { # selfannounce mechanism has_seen_instances() { local I N + executeOk_servald route print for I; do [ $I = $instance_arg ] && continue for ((N=1; 1; ++N)); do local sidvar=SID${I#+}$N [ -n "${!sidvar}" ] || break - if ! grep "ADD OVERLAY NODE sid=${!sidvar}" $instance_servald_log; then + if ! grep "^${!sidvar}" $_tfw_tmp/stdout; then return 1 fi done diff --git a/tests/directory_service b/tests/directory_service index 381ebd42..920d99c0 100755 --- a/tests/directory_service +++ b/tests/directory_service @@ -24,6 +24,7 @@ configure_servald_server() { executeOk_servald config \ set log.show_pid on \ set log.show_time on \ + set rhizome.enable No \ set debug.mdprequests Yes } @@ -95,6 +96,7 @@ start_routing_instance() { set server.dummy_interface_dir "$SERVALD_VAR" \ set monitor.socket "org.servalproject.servald.monitor.socket.$TFWUNIQUE.$instance_name" \ set mdp.socket "org.servalproject.servald.mdp.socket.$TFWUNIQUE.$instance_name" \ + set rhizome.enable No \ set log.show_pid on \ set log.show_time on \ set debug.mdprequests Yes @@ -138,10 +140,14 @@ test_routing() { wait_until is_published $SIDB wait_until is_published $SIDC set_instance +B + executeOk_servald route print + assertStdoutGrep --matches=1 "^$SIDA:UNICAST :" executeOk_servald dna lookup "$DIDC" assertStdoutLineCount '==' 1 assertStdoutGrep --matches=1 "^sid://$SIDC/local/$DIDC:$DIDC:$NAMEC\$" set_instance +C + executeOk_servald route print + assertStdoutGrep --matches=1 "^$SIDA:UNICAST :" executeOk_servald dna lookup "$DIDB" assertStdoutLineCount '==' 1 assertStdoutGrep --matches=1 "^sid://$SIDB/local/$DIDB:$DIDB:$NAMEB\$" diff --git a/tests/dnaprotocol b/tests/dnaprotocol index e2afb623..b730dd41 100755 --- a/tests/dnaprotocol +++ b/tests/dnaprotocol @@ -62,6 +62,7 @@ set_server_vars() { set log.show_pid on \ set log.show_time on \ set mdp.iftype.wifi.tick_ms 100 \ + set rhizome.enable No \ set debug.interfaces Yes \ set debug.packetformats No \ set debug.routing No \ diff --git a/tests/routing b/tests/routing index c36c03c8..d2972ddd 100755 --- a/tests/routing +++ b/tests/routing @@ -20,13 +20,6 @@ source "${0%/*}/../testframework.sh" source "${0%/*}/../testdefs.sh" -configure_servald_server() { - executeOk_servald config \ - set log.show_pid on \ - set log.show_time on \ - set debug.mdprequests Yes -} - add_interface() { >$SERVALD_VAR/dummy$1 executeOk_servald config \ @@ -47,7 +40,8 @@ start_routing_instance() { set mdp.socket "org.servalproject.servald.mdp.socket.$TFWUNIQUE.$instance_name" \ set log.show_pid on \ set log.show_time on \ - set debug.mdprequests Yes + set debug.mdprequests Yes \ + set rhizome.enable no start_servald_server wait_until interface_up } @@ -75,9 +69,13 @@ setup_single_link() { doc_single_link="Start 2 instances on one link" test_single_link() { + foreach_instance +A +B \ + wait_until has_seen_instances +A +B set_instance +A - executeOk_servald mdp ping $SIDB 10 + executeOk_servald mdp ping $SIDB 1 tfw_cat --stdout --stderr + executeOk_servald route print + assertStdoutGrep --matches=1 "^$SIDB:BROADCAST :" } setup_multiple_nodes() { @@ -90,13 +88,19 @@ setup_multiple_nodes() { doc_multiple_nodes="Multiple nodes on one link" test_multiple_nodes() { + foreach +A +B +C +D \ + wait_until has_seen_instances +A +B +C +D set_instance +A - executeOk_servald mdp ping $SIDB 10 + executeOk_servald mdp ping $SIDB 1 tfw_cat --stdout --stderr - executeOk_servald mdp ping $SIDC 3 + executeOk_servald mdp ping $SIDC 1 tfw_cat --stdout --stderr - executeOk_servald mdp ping $SIDD 3 + executeOk_servald mdp ping $SIDD 1 tfw_cat --stdout --stderr + executeOk_servald route print + assertStdoutGrep --matches=1 "^$SIDB:BROADCAST :" + assertStdoutGrep --matches=1 "^$SIDC:BROADCAST :" + assertStdoutGrep --matches=1 "^$SIDD:BROADCAST :" } setup_scan() { @@ -117,10 +121,13 @@ scan_completed() { doc_scan="Simulate isolated clients" test_scan() { - set_instance +A - executeOk_servald scan - wait_until scan_completed - executeOk_servald mdp ping $SIDB 3 + set_instance +A + executeOk_servald scan + wait_until scan_completed + wait_until has_seen_instances +B + executeOk_servald mdp ping $SIDB 1 + executeOk_servald route print + assertStdoutGrep --matches=1 "^$SIDB:UNICAST :" } setup_multihop_linear() { @@ -135,9 +142,15 @@ setup_multihop_linear() { doc_multihop_linear="Start 4 instances in a linear arrangement" test_multihop_linear() { + foreach_instance +A +B +C +D \ + wait_until has_seen_instances +A +B +C +D set_instance +A - executeOk_servald mdp ping $SIDD 10 + executeOk_servald mdp ping $SIDD 1 tfw_cat --stdout --stderr + executeOk_servald route print + assertStdoutGrep --matches=1 "^$SIDB:BROADCAST :" + assertStdoutGrep --matches=1 "^$SIDC:INDIRECT :" + assertStdoutGrep --matches=1 "^$SIDD:INDIRECT :" } setup_crowded_mess() { @@ -157,9 +170,13 @@ setup_crowded_mess() { doc_crowded_mess="Multiple possible paths" test_crowded_mess() { + foreach_instance +A +H \ + wait_until has_seen_instances +A +H set_instance +A - executeOk_servald mdp ping $SIDH 10 + executeOk_servald mdp ping $SIDH 1 tfw_cat --stdout --stderr + executeOk_servald route print + assertStdoutGrep --matches=1 "^$SIDH:INDIRECT :" } runTests "$@"