summaryrefslogtreecommitdiff
path: root/auto_tests/conference_simple_test.c
diff options
context:
space:
mode:
authorzugz (tox) <mbays+tox@sdf.org>2018-08-02 19:23:34 +0100
committerzugz (tox) <mbays+tox@sdf.org>2018-08-12 22:46:06 +0200
commitd56ab5aaff5fab7ac707a5c914d3701f43eb2ba3 (patch)
tree161278ec297d281d1c39f1f337fe67eb52865c4c /auto_tests/conference_simple_test.c
parent4ed6e5999226f9061f546108c5be72fe6f21a775 (diff)
add callback for successful connection to a conference
Diffstat (limited to 'auto_tests/conference_simple_test.c')
-rw-r--r--auto_tests/conference_simple_test.c25
1 files changed, 12 insertions, 13 deletions
diff --git a/auto_tests/conference_simple_test.c b/auto_tests/conference_simple_test.c
index 5a286b4a..010ae029 100644
--- a/auto_tests/conference_simple_test.c
+++ b/auto_tests/conference_simple_test.c
@@ -87,22 +87,17 @@ static void handle_conference_peer_list_changed(Tox *tox, uint32_t conference_nu
87 87
88 fprintf(stderr, "tox%d has %d peers online\n", state->id, count); 88 fprintf(stderr, "tox%d has %d peers online\n", state->id, count);
89 state->peers = count; 89 state->peers = count;
90}
91
92static void handle_conference_connected(Tox *tox, uint32_t conference_number, void *user_data)
93{
94 State *state = (State *)user_data;
90 95
91 // We're tox2, so now we invite tox3. 96 // We're tox2, so now we invite tox3.
92 if (state->id == 2 && !state->invited_next) { 97 if (state->id == 2 && !state->invited_next) {
93 // TODO(zugz): neater way to determine whether we are connected, and when 98 TOX_ERR_CONFERENCE_INVITE err;
94 // we become so 99 tox_conference_invite(tox, 1, state->conference, &err);
95 TOX_ERR_CONFERENCE_PEER_QUERY peer_err; 100 ck_assert_msg(err == TOX_ERR_CONFERENCE_INVITE_OK, "tox2 failed to invite tox3: err = %d", err);
96 tox_conference_peer_number_is_ours(tox, 0, 0, &peer_err);
97
98 if (peer_err != TOX_ERR_CONFERENCE_PEER_QUERY_OK) {
99 return;
100 }
101
102 TOX_ERR_CONFERENCE_INVITE err_invite;
103 tox_conference_invite(tox, 1, state->conference, &err_invite);
104 ck_assert_msg(err_invite == TOX_ERR_CONFERENCE_INVITE_OK,
105 "tox2 failed to invite tox3: err = %d", err_invite);
106 101
107 state->invited_next = true; 102 state->invited_next = true;
108 fprintf(stderr, "tox2 invited tox3\n"); 103 fprintf(stderr, "tox2 invited tox3\n");
@@ -155,6 +150,10 @@ int main(void)
155 tox_callback_conference_invite(tox2, handle_conference_invite); 150 tox_callback_conference_invite(tox2, handle_conference_invite);
156 tox_callback_conference_invite(tox3, handle_conference_invite); 151 tox_callback_conference_invite(tox3, handle_conference_invite);
157 152
153 tox_callback_conference_connected(tox1, handle_conference_connected);
154 tox_callback_conference_connected(tox2, handle_conference_connected);
155 tox_callback_conference_connected(tox3, handle_conference_connected);
156
158 tox_callback_conference_message(tox1, handle_conference_message); 157 tox_callback_conference_message(tox1, handle_conference_message);
159 tox_callback_conference_message(tox2, handle_conference_message); 158 tox_callback_conference_message(tox2, handle_conference_message);
160 tox_callback_conference_message(tox3, handle_conference_message); 159 tox_callback_conference_message(tox3, handle_conference_message);