aboutsummaryrefslogtreecommitdiff
path: root/xmpp-vala/tests/stanza.vala
diff options
context:
space:
mode:
Diffstat (limited to 'xmpp-vala/tests/stanza.vala')
-rw-r--r--xmpp-vala/tests/stanza.vala11
1 files changed, 11 insertions, 0 deletions
diff --git a/xmpp-vala/tests/stanza.vala b/xmpp-vala/tests/stanza.vala
index 7326a668..42e19f9a 100644
--- a/xmpp-vala/tests/stanza.vala
+++ b/xmpp-vala/tests/stanza.vala
@@ -8,6 +8,7 @@ class StanzaTest : Gee.TestCase {
add_async_test("typical_stream", (cb) => { test_typical_stream.begin(cb); });
add_async_test("ack_stream", (cb) => { test_ack_stream.begin(cb); });
add_test("get_attribute_(u)int", test_get_attribute_int);
+ add_test("test_encoded_val", test_encoded_val);
}
private async void test_node_one(Gee.TestFinishedCallback cb) {
@@ -113,6 +114,16 @@ class StanzaTest : Gee.TestCase {
cb();
}
+ private void test_encoded_val() {
+ var attr = new StanzaAttribute.build("ns", "foo", "b\"a<'>r&me");
+ fail_if_not_eq_str(attr.val, "b\"a<'>r&me");
+ fail_if_not_eq_str(attr.encoded_val, "b&quot;a&lt;&apos;&gt;r&amp;me");
+
+ attr.encoded_val = "b&quot;a&lt;&apos;&gt;r&amp;me";
+ fail_if_not_eq_str(attr.val, "b\"a<'>r&me");
+ fail_if_not_eq_str(attr.encoded_val, "b&quot;a&lt;&apos;&gt;r&amp;me");
+ }
+
private void test_get_attribute_int() {
var stanza_node = new StanzaNode.build("test", "ns").add_self_xmlns().put_attribute("bar", "42");
fail_if_not_eq_int(stanza_node.get_attribute_int("bar", -2), 42);