#!/bin/bash source "${0%/*}/../testframework.sh" source "${0%/*}/../testdefs.sh" source "${0%/*}/../testdefs_rhizome.sh" rexp_age='[0-9]*' setup_identities() { setup_servald set_instance +A executeOk_servald config \ set debug.meshms on \ set debug.rhizome on \ set debug.rhizome_manifest on \ set debug.rhizome_store on \ set log.console.level debug \ set log.console.show_time on create_identities $1 } teardown() { stop_all_servald_servers kill_all_servald_processes assert_no_servald_processes report_all_servald_servers } doc_meshmbSend="Send broadcast meshmb message" setup_meshmbSend() { setup_identities 1 } test_meshmbSend() { executeOk_servald meshmb send $IDA1 "Message 1" tfw_cat --stdout --stderr executeOk_servald rhizome export bundle $IDA1 broadcast.manifest broadcast tfw_cat -h broadcast.manifest tfw_cat -h broadcast executeOk_servald meshmb send $IDA1 "Message 2" tfw_cat --stdout --stderr executeOk_servald rhizome export bundle $IDA1 broadcast2.manifest broadcast2 tfw_cat -h broadcast2.manifest tfw_cat -h broadcast2 } doc_meshmbRead="Read meshmb messages" setup_meshmbRead() { setup_identities 1 executeOk_servald meshmb send $IDA1 "Message 1" executeOk_servald meshmb send $IDA1 "Message 2" } test_meshmbRead() { executeOk_servald meshmb read $IDA1 assertStdoutGrep --matches=1 "^_id:offset:age:message$" assertStdoutGrep --matches=1 "^0:30:${rexp_age}:Message 2$" assertStdoutGrep --matches=1 "^1:12:${rexp_age}:Message 1$" assertStdoutLineCount '==' 4 } doc_meshmbListFeeds="List meshmb feeds" setup_meshmbListFeeds() { setup_identities 3 executeOk_servald meshmb send $IDA1 "Message 1" executeOk_servald meshmb send $IDA2 "Message 2" executeOk_servald meshmb send $IDA3 "Message 3" } test_meshmbListFeeds() { executeOk_servald meshmb find tfw_cat --stdout assertStdoutGrep --matches=1 "^_id:id:version:date:name$" assertStdoutGrep --matches=1 ":${IDA1}:" assertStdoutGrep --matches=1 ":${IDA2}:" assertStdoutGrep --matches=1 ":${IDA3}:" assertStdoutLineCount '==' 5 } runTests "$@"