mud/fluffos-2.23-ds03/testsuite/single/tests/efuns/say.c
2020-09-06 05:43:07 -07:00

33 lines
734 B
C

#ifndef __NO_ENVIRONMENT__
string err = 0;
string yes = 0;
#define YES(x) ASSERT2((talker->send(x), yes == x), x); ASSERT2((talker->send("no:" + x, this_object()), !err), err); ASSERT2((talker->send("no:" + x, ({ this_object() })), !err), err)
#define NO(x) ASSERT2((talker->send(x), !err), err)
void catch_tell(string str) {
if (str[0..2] != "yes")
err = str;
else
yes = str;
}
void do_tests() {
object tp;
object talker = new(__DIR__ "talker");
#ifndef __NO_ADD_ACTION__
SAVETP;
enable_commands();
RESTORETP;
#endif
NO("no-noenv");
talker->move(this_object());
YES("yes-inside");
talker->move(new("/single/void"));
move_object(talker);
YES("yes-outside");
}
#endif