aboutsummaryrefslogtreecommitdiff
path: root/tests/client/convertertest.cpp
diff options
context:
space:
mode:
authorRenato Araujo Oliveira Filho <renato.filho@canonical.com>2012-11-28 20:07:56 -0300
committerRenato Araujo Oliveira Filho <renato.filho@canonical.com>2012-11-28 20:07:56 -0300
commit98ed17ed5c2ebab3a396906d4219af2e99988370 (patch)
tree526d7f52989723d623e426862393890c60b6cece /tests/client/convertertest.cpp
parent53dfc2a919fd03f5570cb106d71d3989a3f528d9 (diff)
parentda5a0437d57df35409fedb568b7ebf4e3d6af0da (diff)
downloadqmenumodel-98ed17ed5c2ebab3a396906d4219af2e99988370.tar.gz
qmenumodel-98ed17ed5c2ebab3a396906d4219af2e99988370.tar.bz2
qmenumodel-98ed17ed5c2ebab3a396906d4219af2e99988370.zip
Merged mainline.
Diffstat (limited to 'tests/client/convertertest.cpp')
-rw-r--r--tests/client/convertertest.cpp28
1 files changed, 28 insertions, 0 deletions
diff --git a/tests/client/convertertest.cpp b/tests/client/convertertest.cpp
index 5301653..f382332 100644
--- a/tests/client/convertertest.cpp
+++ b/tests/client/convertertest.cpp
@@ -88,6 +88,34 @@ private Q_SLOTS:
// Map
QVERIFY(compare(QVariantMap(), G_VARIANT_TYPE_VARDICT));
+
+ }
+
+ void testTupleConversion()
+ {
+ QVariantList qTuple;
+ qTuple << 1 << "2" << 3.3;
+
+ GVariant *gTuple = Converter::toGVariant(qTuple);
+ QVERIFY(g_variant_type_is_tuple(g_variant_get_type(gTuple)));
+ QCOMPARE(g_variant_n_children(gTuple), (gsize)3);
+
+ GVariant *v = g_variant_get_child_value(gTuple, 0);
+ int v0 = g_variant_get_int32(v);
+ QCOMPARE(v0, 1);
+ g_variant_unref(v);
+
+ v = g_variant_get_child_value(gTuple, 1);
+ const gchar *v1 = g_variant_get_string(v, NULL);
+ QCOMPARE(QString(v1), QString("2"));
+ g_variant_unref(v);
+
+ v = g_variant_get_child_value(gTuple, 2);
+ gdouble v2 = g_variant_get_double(v);
+ QCOMPARE(v2, 3.3);
+ g_variant_unref(v);
+
+ g_variant_unref(gTuple);
}
};