JsonNode* cometd_msg_bad_connect_new(const cometd* h) { JsonNode* msg = cometd_msg_connect_new(h); cometd_msg_set_boolean_member(msg, COMETD_MSG_SUCCESSFUL_FIELD, FALSE); return msg; }
int main(void) { cometd *cometd = cometd_new(); JsonNode *connect = json_node_new(JSON_NODE_OBJECT); /*After the new you can enable or disable the Websocket simply do this, disabled by defautl*/ cometd->config->webSockState = true; if (cometd->config->webSockState) return(webSocketTest()); cometd_configure(cometd, COMETDOPT_URL, "http://m.zpush.ovh:8080/str/strd"); cometd_configure(cometd, COMETDOPT_MAX_BACKOFF, 5000); struct _cometd_ext* logger = cometd_ext_logger_new(); cometd_ext_add(&cometd->exts, logger); cometd_connect(cometd); connect = cometd_msg_connect_new(cometd); cometd_transport_send(cometd, connect); //cometd_subscribe(cometd, "/service/GmY-HuzW/6sd0/echo", handler); cometd_transport_send(cometd, cometd_ping_ls(cometd, "/service/GmY-HuzW/6sd0/echo")); //cometd_subscribe(cometd, "/service/GmY-HuzW/6sd0/ls", handler); //cometd_subscribe(cometd, "service/GmY-HuzW/6sd0/updateMeta", handler); //cometd_subscribe(cometd, "/service/GmY-HuzW/6sd0/ls", handler); //cometd_subscribe(cometd, "/service/GmY-HuzW/6sd0/newFile", handler); cometd_listen(cometd); return 0; }
END_TEST START_TEST (test_cometd_process_connect_takes_advice_when_it_exists) { cometd_conn* conn = g_instance->conn; cometd_conn_set_client_id(conn, "testid"); cometd_conn_set_transport(conn, &TEST_TRANSPORT); // set advice JsonNode* msg = cometd_msg_connect_new(g_instance); cometd_advice* advice = cometd_advice_new(); cometd_msg_set_advice(msg, advice); cometd_process_connect(g_instance, msg); // no advice JsonNode* bad_connect = cometd_msg_bad_connect_new(g_instance); cometd_process_connect(g_instance, bad_connect); // assert advice exists fail_unless(cometd_conn_advice(conn)->reconnect == COMETD_RECONNECT_NONE); cometd_advice_destroy(advice); json_node_free(msg); json_node_free(bad_connect); }
END_TEST START_TEST (test_cometd_process_connect_unsuccessful) { cometd_conn* conn = g_instance->conn; cometd_conn_set_client_id(conn, "testid"); cometd_conn_set_transport(conn, &TEST_TRANSPORT); fail_unless(cometd_conn_is_state(conn, COMETD_UNINITIALIZED)); JsonNode* msg = cometd_msg_connect_new(g_instance); cometd_msg_set_boolean_member(msg, "successful", FALSE); int code = cometd_process_connect(g_instance, msg); fail_unless(cometd_conn_is_state(conn, COMETD_UNCONNECTED)); ck_assert_int_eq(COMETD_SUCCESS, code); }
END_TEST START_TEST (test_cometd_msg_connect_new) { cometd* h = cometd_new(); cometd_conn* conn = h->conn; cometd_conn_set_client_id(conn, "testid"); cometd_conn_set_transport(conn, &TEST_TRANSPORT); JsonNode* msg = cometd_msg_connect_new(h); JsonObject* obj = json_node_get_object(msg); const gchar* channel = json_object_get_string_member(obj, COMETD_MSG_CHANNEL_FIELD); fail_unless(strcmp(channel, COMETD_CHANNEL_META_CONNECT) == 0); json_node_free(msg); cometd_destroy(h); }