Example #1
0
void
handle_room_roster_complete(const char * const room)
{
    if (muc_room_is_autojoin(room)) {
        ui_room_join(room, FALSE);
    } else {
        ui_room_join(room, TRUE);
    }
    muc_remove_invite(room);
    muc_set_roster_received(room);
    GList *roster = muc_get_roster(room);
    ui_room_roster(room, roster, NULL);

    char *subject = muc_get_subject(room);
    if (subject != NULL) {
        ui_room_subject(room, subject);
    }

    GList *pending_broadcasts = muc_get_pending_broadcasts(room);
    if (pending_broadcasts != NULL) {
        GList *curr = pending_broadcasts;
        while (curr != NULL) {
            ui_room_broadcast(room, curr->data);
            curr = g_list_next(curr);
        }
    }
}
Example #2
0
void test_muc_remove_invite(void **state)
{
    char *room = "*****@*****.**";
    muc_add_invite(room);
    muc_remove_invite(room);

    gboolean invite_exists = muc_invites_include(room);

    assert_false(invite_exists);
}