mirror of
https://github.com/strophe/libstrophe.git
synced 2026-08-02 10:26:21 +00:00
@@ -177,13 +177,9 @@ static void test_stanza_error(xmpp_ctx_t *ctx)
|
|||||||
mood = xmpp_stanza_new_from_string(ctx, str_mood);
|
mood = xmpp_stanza_new_from_string(ctx, str_mood);
|
||||||
assert(mood != NULL);
|
assert(mood != NULL);
|
||||||
|
|
||||||
assert(xmpp_stanza_get_to(error) != NULL);
|
|
||||||
COMPARE("romeo@montague.lit/home", xmpp_stanza_get_to(error));
|
COMPARE("romeo@montague.lit/home", xmpp_stanza_get_to(error));
|
||||||
assert(xmpp_stanza_get_from(error) != NULL);
|
|
||||||
COMPARE("juliet@capulet.lit/chamber", xmpp_stanza_get_from(error));
|
COMPARE("juliet@capulet.lit/chamber", xmpp_stanza_get_from(error));
|
||||||
assert(xmpp_stanza_get_id(error) != NULL);
|
|
||||||
COMPARE("e2e1", xmpp_stanza_get_id(error));
|
COMPARE("e2e1", xmpp_stanza_get_id(error));
|
||||||
assert(xmpp_stanza_get_type(error) != NULL);
|
|
||||||
COMPARE("error", xmpp_stanza_get_type(error));
|
COMPARE("error", xmpp_stanza_get_type(error));
|
||||||
|
|
||||||
/* FAIL - no list given */
|
/* FAIL - no list given */
|
||||||
@@ -212,7 +208,6 @@ static void test_stanza_error(xmpp_ctx_t *ctx)
|
|||||||
"item", "mood", NULL);
|
"item", "mood", NULL);
|
||||||
assert(item != NULL);
|
assert(item != NULL);
|
||||||
assert(xmpp_stanza_get_children(item) != NULL);
|
assert(xmpp_stanza_get_children(item) != NULL);
|
||||||
assert(xmpp_stanza_get_name(xmpp_stanza_get_children(item)) != NULL);
|
|
||||||
COMPARE("annoyed", xmpp_stanza_get_name(xmpp_stanza_get_children(item)));
|
COMPARE("annoyed", xmpp_stanza_get_name(xmpp_stanza_get_children(item)));
|
||||||
|
|
||||||
item = xmpp_stanza_get_child_by_path(
|
item = xmpp_stanza_get_child_by_path(
|
||||||
@@ -223,7 +218,6 @@ static void test_stanza_error(xmpp_ctx_t *ctx)
|
|||||||
NULL);
|
NULL);
|
||||||
assert(item != NULL);
|
assert(item != NULL);
|
||||||
assert(xmpp_stanza_get_children(item) != NULL);
|
assert(xmpp_stanza_get_children(item) != NULL);
|
||||||
assert(xmpp_stanza_get_name(xmpp_stanza_get_children(item)) != NULL);
|
|
||||||
COMPARE("annoyed", xmpp_stanza_get_name(xmpp_stanza_get_children(item)));
|
COMPARE("annoyed", xmpp_stanza_get_name(xmpp_stanza_get_children(item)));
|
||||||
|
|
||||||
ret = xmpp_stanza_get_attributes(error, attr, attrlen);
|
ret = xmpp_stanza_get_attributes(error, attr, attrlen);
|
||||||
@@ -243,6 +237,50 @@ static void test_stanza_error(xmpp_ctx_t *ctx)
|
|||||||
xmpp_stanza_release(error);
|
xmpp_stanza_release(error);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void test_stanza_bookmark(xmpp_ctx_t *ctx)
|
||||||
|
{
|
||||||
|
// clang-format off
|
||||||
|
static const char *str =
|
||||||
|
"<item xmlns=\"http://jabber.org/protocol/pubsub\" id=\"\">"
|
||||||
|
"<conference autojoin=\"\" name=\"Symbol(lit-nothing)\" xmlns=\"urn:xmpp:bookmarks:1\" />"
|
||||||
|
"</item>";
|
||||||
|
// clang-format on
|
||||||
|
|
||||||
|
xmpp_stanza_t *stanza = xmpp_stanza_new_from_string(ctx, str);
|
||||||
|
assert(stanza != NULL);
|
||||||
|
const char *id = xmpp_stanza_get_id(stanza);
|
||||||
|
assert(id != NULL);
|
||||||
|
assert(strcmp(id, "") == 0);
|
||||||
|
xmpp_stanza_t *child = xmpp_stanza_get_children(stanza);
|
||||||
|
COMPARE("conference", xmpp_stanza_get_name(child));
|
||||||
|
const char *autojoin = xmpp_stanza_get_attribute(child, "autojoin");
|
||||||
|
assert(autojoin != NULL);
|
||||||
|
assert(strcmp(autojoin, "") == 0);
|
||||||
|
xmpp_stanza_release(stanza);
|
||||||
|
}
|
||||||
|
|
||||||
|
static void test_stanza_copy(xmpp_ctx_t *ctx)
|
||||||
|
{
|
||||||
|
// clang-format off
|
||||||
|
static const char *str =
|
||||||
|
"<item xmlns=\"http://jabber.org/protocol/pubsub\" id=\"\">"
|
||||||
|
"<conference autojoin=\"\" name=\"Symbol(lit-nothing)\" xmlns=\"urn:xmpp:bookmarks:1\" />"
|
||||||
|
"</item>";
|
||||||
|
// clang-format on
|
||||||
|
|
||||||
|
xmpp_stanza_t *stanza = xmpp_stanza_new_from_string(ctx, str);
|
||||||
|
assert(stanza != NULL);
|
||||||
|
const char *id = xmpp_stanza_get_id(stanza);
|
||||||
|
assert(id != NULL);
|
||||||
|
assert(strcmp(id, "") == 0);
|
||||||
|
xmpp_stanza_t *child = xmpp_stanza_get_children(stanza);
|
||||||
|
COMPARE("conference", xmpp_stanza_get_name(child));
|
||||||
|
xmpp_stanza_t *copy = xmpp_stanza_copy(child);
|
||||||
|
xmpp_stanza_release(stanza);
|
||||||
|
COMPARE("conference", xmpp_stanza_get_name(copy));
|
||||||
|
xmpp_stanza_release(copy);
|
||||||
|
}
|
||||||
|
|
||||||
int main()
|
int main()
|
||||||
{
|
{
|
||||||
xmpp_ctx_t *ctx;
|
xmpp_ctx_t *ctx;
|
||||||
@@ -251,6 +289,8 @@ int main()
|
|||||||
ctx = xmpp_ctx_new(&stanza_mem, NULL);
|
ctx = xmpp_ctx_new(&stanza_mem, NULL);
|
||||||
assert(ctx != NULL);
|
assert(ctx != NULL);
|
||||||
|
|
||||||
|
test_stanza_bookmark(ctx);
|
||||||
|
test_stanza_copy(ctx);
|
||||||
test_stanza_add_child(ctx);
|
test_stanza_add_child(ctx);
|
||||||
test_stanza_from_string(ctx);
|
test_stanza_from_string(ctx);
|
||||||
test_stanza_error(ctx);
|
test_stanza_error(ctx);
|
||||||
|
|||||||
Reference in New Issue
Block a user