ulong get_messages (List <Message> WR *messages, UserData *user_data, Time *time)
{
  ...
}

@Expect get_messages "throws exception when user is wrong"                 user_is_wrong
@Expect get_messages "throws exception when time is wrong"                 time_is_wrong
@Expect get_messages "throws exception when user is not correct"           user_is_not_correct
@Expect get_messages "throws exception when subscriptions are not correct" subscriptions_are_not_correct

void add_message (UserData WR *user_data, Message *message, Time *time)
{
  ...
}

@Expect add_message "doesn't update when no subscriptions"                no_subscriptions
@Expect add_message "doesn't update when time is too early"               time_is_too_early

@Expect add_message "throws exception when user is wrong"                 user_is_wrong
@Expect add_message "throws exception when time is wrong"                 time_is_wrong
@Expect add_message "throws exception when message is wrong"              message_is_wrong
@Expect add_message "throws exception when user is not correct"           user_is_not_correct
@Expect add_message "throws exception when subscriptions are not correct" subscriptions_are_not_correct
