Yields and waits for a response from the other bot.
Yields and waits for a response from the other bot, then throws if the message doesn't match the passed string.
Yields and waits for a response from the other bot, then throws if the message head does not match that of the passed string.
Yields and waits for a response from the other bot, then throws if the message body does not contain the passed string.
Yields and waits for a response from the other bot, then throws if the message tail does not match that of the passed string.
The last message received from the other bot, stripped of effects.
Replaces some tokens in a string with values from the test context.
Checks that the last message received matches the passed string, and throws if it does not.
Checks that the head of the last message received matches that of the passed string, and throws if it does not.
Checks that the body of the last message received contains the passed string, and throws if it does not.
Checks that the tail of the last message received contains the passed string, and throws if it does not.
Checks that the last fiber invocation was triggered by a timer.
Sends a message to the other test bot, prepending it with its nickname.
Sends a message to the other test bot as-is, without any prefixing.
Sends a message to the other test bot, prepending it with the command prefix.
Synchronises with the target bot by sending a random number and waiting for it to be echoed back.
Whether or not the last fiber invocation was triggered by a timer.
The delay between sending messages.
The name of the channel to test in.
The CarryingFiber to run the test in.
The plugin to test.
The nickname of the other bot to test against.
Helper struct to aid in testing plugins.