summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSimon McVittie <simon.mcvittie@collabora.co.uk>2014-04-04 14:39:03 +0100
committerSimon McVittie <simon.mcvittie@collabora.co.uk>2014-04-08 19:53:35 +0100
commit5339b45494b6f3be55412ca63770fd021ed981da (patch)
tree26b8a20f584d394dd6135699a199f4f0e1b67d4f
parent4c0a981050c83ca4018c5c2947d18b8393fe3d6e (diff)
Remove tp_connection_manager_param_get_default
It uses the dbus-glib type system. Bug: https://bugs.freedesktop.org/show_bug.cgi?id=77139 Reviewed-by: Xavier Claessens
-rw-r--r--docs/reference/telepathy-glib/telepathy-glib-sections.txt1
-rw-r--r--examples/client/inspect-cm.c10
-rw-r--r--telepathy-glib/connection-manager.c31
-rw-r--r--telepathy-glib/connection-manager.h2
-rw-r--r--telepathy-glib/versions/main-1.0.abi1
-rw-r--r--tests/dbus/cm.c351
6 files changed, 184 insertions, 212 deletions
diff --git a/docs/reference/telepathy-glib/telepathy-glib-sections.txt b/docs/reference/telepathy-glib/telepathy-glib-sections.txt
index 00efc3e8a..63dc3f678 100644
--- a/docs/reference/telepathy-glib/telepathy-glib-sections.txt
+++ b/docs/reference/telepathy-glib/telepathy-glib-sections.txt
@@ -3607,7 +3607,6 @@ tp_connection_manager_param_is_required
tp_connection_manager_param_is_required_for_registration
tp_connection_manager_param_is_secret
tp_connection_manager_param_is_dbus_property
-tp_connection_manager_param_get_default
tp_connection_manager_param_dup_default_variant
tp_connection_manager_check_valid_name
tp_connection_manager_check_valid_protocol_name
diff --git a/examples/client/inspect-cm.c b/examples/client/inspect-cm.c
index 63b1a00ea..1297cb499 100644
--- a/examples/client/inspect-cm.c
+++ b/examples/client/inspect-cm.c
@@ -114,7 +114,7 @@ show_cm (TpConnectionManager *cm)
while (params)
{
TpConnectionManagerParam *param = params->data;
- GValue value = { 0 };
+ GVariant *variant;
g_message ("\tParameter: %s",
tp_connection_manager_param_get_name (param));
@@ -138,13 +138,15 @@ show_cm (TpConnectionManager *cm)
tp_connection_manager_param_is_dbus_property (param) ?
"yes" : "no");
- if (tp_connection_manager_param_get_default (param, &value))
+ variant = tp_connection_manager_param_dup_default_variant (param);
+
+ if (variant != NULL)
{
- gchar *s = g_strdup_value_contents (&value);
+ gchar *s = g_variant_print (variant, TRUE);
g_message ("\t\tDefault value: %s", s);
g_free (s);
- g_value_unset (&value);
+ g_variant_unref (variant);
}
else
{
diff --git a/telepathy-glib/connection-manager.c b/telepathy-glib/connection-manager.c
index 925dc7295..eb75355db 100644
--- a/telepathy-glib/connection-manager.c
+++ b/telepathy-glib/connection-manager.c
@@ -1851,37 +1851,6 @@ tp_connection_manager_param_is_dbus_property (
}
/**
- * tp_connection_manager_param_get_default:
- * @param: a parameter supported by a #TpConnectionManager
- * @value: pointer to an unset (all zeroes) #GValue into which the default's
- * type and value are written
- *
- * Get the default value for this parameter, if there is one. If %FALSE is
- * returned, @value is left uninitialized.
- *
- * Returns: %TRUE if there is a default value
- * Since: 0.7.26
- */
-gboolean
-tp_connection_manager_param_get_default (
- const TpConnectionManagerParam *param,
- GValue *value)
-{
- g_return_val_if_fail (param != NULL, FALSE);
- g_return_val_if_fail (value != NULL, FALSE);
- g_return_val_if_fail (!G_IS_VALUE (value), FALSE);
-
- if ((param->flags & TP_CONN_MGR_PARAM_FLAG_HAS_DEFAULT) == 0
- || !G_IS_VALUE (&param->default_value))
- return FALSE;
-
- g_value_init (value, G_VALUE_TYPE (&param->default_value));
- g_value_copy (&param->default_value, value);
-
- return TRUE;
-}
-
-/**
* tp_connection_manager_param_dup_default_variant:
* @param: a parameter supported by a #TpConnectionManager
*
diff --git a/telepathy-glib/connection-manager.h b/telepathy-glib/connection-manager.h
index 7c9c9c4b1..570c42557 100644
--- a/telepathy-glib/connection-manager.h
+++ b/telepathy-glib/connection-manager.h
@@ -125,8 +125,6 @@ gboolean tp_connection_manager_param_is_secret (
const TpConnectionManagerParam *param);
gboolean tp_connection_manager_param_is_dbus_property (
const TpConnectionManagerParam *param);
-gboolean tp_connection_manager_param_get_default (
- const TpConnectionManagerParam *param, GValue *value);
_TP_AVAILABLE_IN_0_20
GVariant *tp_connection_manager_param_dup_default_variant (
const TpConnectionManagerParam *param);
diff --git a/telepathy-glib/versions/main-1.0.abi b/telepathy-glib/versions/main-1.0.abi
index 0d4e5e1e6..3f864e781 100644
--- a/telepathy-glib/versions/main-1.0.abi
+++ b/telepathy-glib/versions/main-1.0.abi
@@ -643,7 +643,6 @@ tp_connection_manager_param_dup_default_variant
tp_connection_manager_param_dup_variant_type
tp_connection_manager_param_free
tp_connection_manager_param_get_dbus_signature
-tp_connection_manager_param_get_default
tp_connection_manager_param_get_name
tp_connection_manager_param_get_type
tp_connection_manager_param_is_dbus_property
diff --git a/tests/dbus/cm.c b/tests/dbus/cm.c
index 781fc6eb6..64669fe6f 100644
--- a/tests/dbus/cm.c
+++ b/tests/dbus/cm.c
@@ -157,21 +157,22 @@ static void
assert_param_flags (const TpConnectionManagerParam *param,
TpConnMgrParamFlags flags)
{
- GValue value = {0, };
+ GVariant *value = NULL;
g_assert (tp_connection_manager_param_is_required (param) ==
((flags & TP_CONN_MGR_PARAM_FLAG_REQUIRED) != 0));
g_assert (tp_connection_manager_param_is_required_for_registration (param) ==
((flags & TP_CONN_MGR_PARAM_FLAG_REGISTER) != 0));
- g_assert (tp_connection_manager_param_get_default (param, &value) ==
+ value = tp_connection_manager_param_dup_default_variant (param);
+ g_assert ((value != NULL) ==
((flags & TP_CONN_MGR_PARAM_FLAG_HAS_DEFAULT) != 0));
g_assert (tp_connection_manager_param_is_secret (param) ==
((flags & TP_CONN_MGR_PARAM_FLAG_SECRET) != 0));
g_assert (tp_connection_manager_param_is_dbus_property (param) ==
((flags & TP_CONN_MGR_PARAM_FLAG_DBUS_PROPERTY) != 0));
- if (G_IS_VALUE (&value))
- g_value_unset (&value);
+ if (value != NULL)
+ g_variant_unref (value);
}
static void
@@ -259,8 +260,6 @@ test_file_got_info (Test *test,
const TpConnectionManagerParam *param;
TpProtocol *protocol;
gchar **strv;
- GValue value = { 0 };
- gboolean ok;
GVariant *variant;
test->cm = tp_client_factory_ensure_connection_manager (test->factory,
@@ -324,9 +323,6 @@ test_file_got_info (Test *test,
g_assert (!tp_connection_manager_param_is_secret (param));
g_assert (!tp_connection_manager_param_is_dbus_property (param));
g_assert (!tp_connection_manager_param_is_dbus_property (param));
- ok = tp_connection_manager_param_get_default (param, &value);
- g_assert (!ok);
- g_assert (!G_IS_VALUE (&value));
g_assert (tp_connection_manager_param_dup_default_variant (param) == NULL);
param = g_ptr_array_index (tp_protocol_get_params (protocol), 1);
@@ -342,14 +338,10 @@ test_file_got_info (Test *test,
g_assert_cmpstr (tp_connection_manager_param_get_dbus_signature (param), ==, "b");
assert_param_flags (param, TP_CONN_MGR_PARAM_FLAG_HAS_DEFAULT);
g_assert (param == tp_protocol_get_param (protocol, "register"));
- ok = tp_connection_manager_param_get_default (param, &value);
- g_assert (ok);
- g_assert (G_IS_VALUE (&value));
- g_assert (G_VALUE_HOLDS_BOOLEAN (&value));
- g_value_unset (&value);
variant = tp_connection_manager_param_dup_default_variant (param);
g_assert_cmpstr (g_variant_get_type_string (variant), ==, "b");
g_assert_cmpint (g_variant_get_boolean (variant), ==, TRUE);
+ g_variant_unref (variant);
g_assert_cmpuint (tp_protocol_get_params (protocol)->len, ==, 3);
@@ -385,10 +377,9 @@ test_complex_file_got_info (Test *test,
gulong id;
const TpConnectionManagerParam *param;
TpProtocol *protocol;
- gchar **strv;
- GPtrArray *arr;
GList *protocols;
- GValue value = {0, };
+ GVariant *variant;
+ const gchar *s;
test->cm = tp_client_factory_ensure_connection_manager (test->factory,
"test_manager_file", NULL, &error);
@@ -423,50 +414,50 @@ test_complex_file_got_info (Test *test,
g_assert_cmpstr (tp_connection_manager_param_get_dbus_signature (param), ==, "s");
assert_param_flags (param,
TP_CONN_MGR_PARAM_FLAG_REQUIRED | TP_CONN_MGR_PARAM_FLAG_HAS_DEFAULT);
- tp_connection_manager_param_get_default (param, &value);
- g_assert (G_VALUE_HOLDS_STRING (&value));
- g_assert_cmpstr (g_value_get_string (&value), ==, "foo@default");
- g_value_unset (&value);
+ variant = tp_connection_manager_param_dup_default_variant (param);
+ g_assert_cmpstr (g_variant_get_type_string (variant), ==, "s");
+ g_assert_cmpstr (g_variant_get_string (variant, NULL), ==, "foo@default");
+ g_variant_unref (variant);
param = g_ptr_array_index (tp_protocol_get_params (protocol), 1);
g_assert_cmpstr (tp_connection_manager_param_get_name (param), ==, "password");
g_assert_cmpstr (tp_connection_manager_param_get_dbus_signature (param), ==, "s");
assert_param_flags (param,
TP_CONN_MGR_PARAM_FLAG_REQUIRED | TP_CONN_MGR_PARAM_FLAG_SECRET);
- g_assert (!tp_connection_manager_param_get_default (param, &value));
+ g_assert (tp_connection_manager_param_dup_default_variant (param) == NULL);
param = g_ptr_array_index (tp_protocol_get_params (protocol), 2);
g_assert_cmpstr (tp_connection_manager_param_get_name (param), ==, "encryption-key");
g_assert_cmpstr (tp_connection_manager_param_get_dbus_signature (param), ==, "s");
assert_param_flags (param, TP_CONN_MGR_PARAM_FLAG_SECRET);
- g_assert (!tp_connection_manager_param_get_default (param, &value));
+ g_assert (tp_connection_manager_param_dup_default_variant (param) == NULL);
param = g_ptr_array_index (tp_protocol_get_params (protocol), 3);
g_assert_cmpstr (tp_connection_manager_param_get_name (param), ==, "port");
g_assert_cmpstr (tp_connection_manager_param_get_dbus_signature (param), ==, "q");
assert_param_flags (param, TP_CONN_MGR_PARAM_FLAG_HAS_DEFAULT);
- tp_connection_manager_param_get_default (param, &value);
- g_assert (G_VALUE_HOLDS_UINT (&value));
- g_assert_cmpuint (g_value_get_uint (&value), ==, 1234);
- g_value_unset (&value);
+ variant = tp_connection_manager_param_dup_default_variant (param);
+ g_assert_cmpuint (g_variant_get_uint32 (variant), ==, 1234);
+ g_variant_unref (variant);
param = g_ptr_array_index (tp_protocol_get_params (protocol), 4);
g_assert_cmpstr (tp_connection_manager_param_get_name (param), ==, "register");
g_assert_cmpstr (tp_connection_manager_param_get_dbus_signature (param), ==, "b");
assert_param_flags (param, 0);
- g_assert (!tp_connection_manager_param_get_default (param, &value));
+ g_assert (tp_connection_manager_param_dup_default_variant (param) == NULL);
param = g_ptr_array_index (tp_protocol_get_params (protocol), 5);
g_assert_cmpstr (tp_connection_manager_param_get_name (param), ==, "server-list");
g_assert_cmpstr (tp_connection_manager_param_get_dbus_signature (param), ==, "as");
assert_param_flags (param, TP_CONN_MGR_PARAM_FLAG_HAS_DEFAULT);
- tp_connection_manager_param_get_default (param, &value);
- g_assert (G_VALUE_HOLDS (&value, G_TYPE_STRV));
- strv = g_value_get_boxed (&value);
- g_assert_cmpstr (strv[0], ==, "foo");
- g_assert_cmpstr (strv[1], ==, "bar");
- g_assert (strv[2] == NULL);
- g_value_unset (&value);
+ variant = tp_connection_manager_param_dup_default_variant (param);
+ g_assert_cmpstr (g_variant_get_type_string (variant), ==, "as");
+ g_assert_cmpuint (g_variant_n_children (variant), ==, 2);
+ g_variant_get_child (variant, 0, "&s", &s);
+ g_assert_cmpstr (s, ==, "foo");
+ g_variant_get_child (variant, 1, "&s", &s);
+ g_assert_cmpstr (s, ==, "bar");
+ g_variant_unref (variant);
g_assert_cmpuint (tp_protocol_get_params (protocol)->len, ==, 6);
@@ -478,51 +469,52 @@ test_complex_file_got_info (Test *test,
assert_param_flags (param,
TP_CONN_MGR_PARAM_FLAG_REQUIRED | TP_CONN_MGR_PARAM_FLAG_HAS_DEFAULT);
g_assert_cmpstr (tp_connection_manager_param_get_dbus_signature (param), ==, "s");
- tp_connection_manager_param_get_default (param, &value);
- g_assert (G_VALUE_HOLDS_STRING (&value));
- g_assert_cmpstr (g_value_get_string (&value), ==, "bar@default");
- g_value_unset (&value);
+ variant = tp_connection_manager_param_dup_default_variant (param);
+ g_assert_cmpstr (g_variant_get_type_string (variant), ==, "s");
+ g_assert_cmpstr (g_variant_get_string (variant, NULL), ==, "bar@default");
+ g_variant_unref (variant);
param = g_ptr_array_index (tp_protocol_get_params (protocol), 1);
g_assert_cmpstr (tp_connection_manager_param_get_name (param), ==, "encryption-key");
assert_param_flags (param,
TP_CONN_MGR_PARAM_FLAG_REQUIRED | TP_CONN_MGR_PARAM_FLAG_SECRET);
g_assert_cmpstr (tp_connection_manager_param_get_dbus_signature (param), ==, "s");
- g_assert (!tp_connection_manager_param_get_default (param, &value));
+ g_assert (tp_connection_manager_param_dup_default_variant (param) == NULL);
param = g_ptr_array_index (tp_protocol_get_params (protocol), 2);
g_assert_cmpstr (tp_connection_manager_param_get_name (param), ==, "password");
assert_param_flags (param,
TP_CONN_MGR_PARAM_FLAG_REQUIRED | TP_CONN_MGR_PARAM_FLAG_SECRET);
g_assert_cmpstr (tp_connection_manager_param_get_dbus_signature (param), ==, "s");
- g_assert (!tp_connection_manager_param_get_default (param, &value));
+ g_assert (tp_connection_manager_param_dup_default_variant (param) == NULL);
param = g_ptr_array_index (tp_protocol_get_params (protocol), 3);
g_assert_cmpstr (tp_connection_manager_param_get_name (param), ==, "port");
g_assert_cmpstr (tp_connection_manager_param_get_dbus_signature (param), ==, "q");
assert_param_flags (param, TP_CONN_MGR_PARAM_FLAG_HAS_DEFAULT);
- tp_connection_manager_param_get_default (param, &value);
- g_assert (G_VALUE_HOLDS_UINT (&value));
- g_assert_cmpuint (g_value_get_uint (&value), ==, 4321);
- g_value_unset (&value);
+ variant = tp_connection_manager_param_dup_default_variant (param);
+ g_assert_cmpstr (g_variant_get_type_string (variant), ==, "u");
+ g_assert_cmpuint (g_variant_get_uint32 (variant), ==, 4321);
+ g_variant_unref (variant);
param = g_ptr_array_index (tp_protocol_get_params (protocol), 4);
g_assert_cmpstr (tp_connection_manager_param_get_name (param), ==, "register");
g_assert_cmpstr (tp_connection_manager_param_get_dbus_signature (param), ==, "b");
assert_param_flags (param, 0);
- g_assert (!tp_connection_manager_param_get_default (param, &value));
+ g_assert (tp_connection_manager_param_dup_default_variant (param) == NULL);
param = g_ptr_array_index (tp_protocol_get_params (protocol), 5);
g_assert_cmpstr (tp_connection_manager_param_get_name (param), ==, "server-list");
g_assert_cmpstr (tp_connection_manager_param_get_dbus_signature (param), ==, "as");
assert_param_flags (param, TP_CONN_MGR_PARAM_FLAG_HAS_DEFAULT);
- tp_connection_manager_param_get_default (param, &value);
- g_assert (G_VALUE_HOLDS (&value, G_TYPE_STRV));
- strv = g_value_get_boxed (&value);
- g_assert_cmpstr (strv[0], ==, "bar");
- g_assert_cmpstr (strv[1], ==, "foo");
- g_assert (strv[2] == NULL);
- g_value_unset (&value);
+ variant = tp_connection_manager_param_dup_default_variant (param);
+ g_assert_cmpstr (g_variant_get_type_string (variant), ==, "as");
+ g_assert_cmpuint (g_variant_n_children (variant), ==, 2);
+ g_variant_get_child (variant, 0, "&s", &s);
+ g_assert_cmpstr (s, ==, "bar");
+ g_variant_get_child (variant, 1, "&s", &s);
+ g_assert_cmpstr (s, ==, "foo");
+ g_variant_unref (variant);
g_assert_cmpuint (tp_protocol_get_params (protocol)->len, ==, 6);
@@ -536,237 +528,250 @@ test_complex_file_got_info (Test *test,
assert_param_flags (param,
TP_CONN_MGR_PARAM_FLAG_REQUIRED | TP_CONN_MGR_PARAM_FLAG_HAS_DEFAULT);
g_assert_cmpstr (tp_connection_manager_param_get_dbus_signature (param), ==, "s");
- tp_connection_manager_param_get_default (param, &value);
- g_assert (G_VALUE_HOLDS_STRING (&value));
- g_assert_cmpstr (g_value_get_string (&value), ==, "hello world");
- g_value_unset (&value);
+ variant = tp_connection_manager_param_dup_default_variant (param);
+ g_assert_cmpstr (g_variant_get_type_string (variant), ==, "s");
+ g_assert_cmpstr (g_variant_get_string (variant, NULL), ==, "hello world");
+ g_variant_unref (variant);
param = g_ptr_array_index (tp_protocol_get_params (protocol), 1);
g_assert_cmpstr (tp_connection_manager_param_get_name (param), ==, "semicolons");
assert_param_flags (param,
TP_CONN_MGR_PARAM_FLAG_HAS_DEFAULT | TP_CONN_MGR_PARAM_FLAG_SECRET);
g_assert_cmpstr (tp_connection_manager_param_get_dbus_signature (param), ==, "s");
- tp_connection_manager_param_get_default (param, &value);
- g_assert (G_VALUE_HOLDS_STRING (&value));
- g_assert_cmpstr (g_value_get_string (&value), ==, "list;of;misc;");
- g_value_unset (&value);
+ variant = tp_connection_manager_param_dup_default_variant (param);
+ g_assert_cmpstr (g_variant_get_type_string (variant), ==, "s");
+ g_assert_cmpstr (g_variant_get_string (variant, NULL), ==, "list;of;misc;");
+ g_variant_unref (variant);
param = g_ptr_array_index (tp_protocol_get_params (protocol), 2);
g_assert_cmpstr (tp_connection_manager_param_get_name (param), ==, "list");
assert_param_flags (param, TP_CONN_MGR_PARAM_FLAG_HAS_DEFAULT);
g_assert_cmpstr (tp_connection_manager_param_get_dbus_signature (param), ==, "as");
- tp_connection_manager_param_get_default (param, &value);
- g_assert (G_VALUE_HOLDS (&value, G_TYPE_STRV));
- strv = g_value_get_boxed (&value);
- g_assert_cmpstr (strv[0], ==, "list");
- g_assert_cmpstr (strv[1], ==, "of");
- g_assert_cmpstr (strv[2], ==, "misc");
- g_assert (strv[3] == NULL);
- g_value_unset (&value);
+ variant = tp_connection_manager_param_dup_default_variant (param);
+ g_assert_cmpstr (g_variant_get_type_string (variant), ==, "as");
+ g_assert_cmpuint (g_variant_n_children (variant), ==, 3);
+ g_variant_get_child (variant, 0, "&s", &s);
+ g_assert_cmpstr (s, ==, "list");
+ g_variant_get_child (variant, 1, "&s", &s);
+ g_assert_cmpstr (s, ==, "of");
+ g_variant_get_child (variant, 2, "&s", &s);
+ g_assert_cmpstr (s, ==, "misc");
+ g_variant_unref (variant);
param = g_ptr_array_index (tp_protocol_get_params (protocol), 3);
g_assert_cmpstr (tp_connection_manager_param_get_name (param), ==, "unterminated-list");
assert_param_flags (param, TP_CONN_MGR_PARAM_FLAG_HAS_DEFAULT);
g_assert_cmpstr (tp_connection_manager_param_get_dbus_signature (param), ==, "as");
- tp_connection_manager_param_get_default (param, &value);
- g_assert (G_VALUE_HOLDS (&value, G_TYPE_STRV));
- strv = g_value_get_boxed (&value);
- g_assert_cmpstr (strv[0], ==, "list");
- g_assert_cmpstr (strv[1], ==, "of");
- g_assert_cmpstr (strv[2], ==, "misc");
- g_assert (strv[3] == NULL);
- g_value_unset (&value);
+ variant = tp_connection_manager_param_dup_default_variant (param);
+ g_assert_cmpstr (g_variant_get_type_string (variant), ==, "as");
+ g_assert_cmpuint (g_variant_n_children (variant), ==, 3);
+ g_variant_get_child (variant, 0, "&s", &s);
+ g_assert_cmpstr (s, ==, "list");
+ g_variant_get_child (variant, 1, "&s", &s);
+ g_assert_cmpstr (s, ==, "of");
+ g_variant_get_child (variant, 2, "&s", &s);
+ g_assert_cmpstr (s, ==, "misc");
+ g_variant_unref (variant);
param = g_ptr_array_index (tp_protocol_get_params (protocol), 4);
g_assert_cmpstr (tp_connection_manager_param_get_name (param), ==, "spaces-in-list");
assert_param_flags (param, TP_CONN_MGR_PARAM_FLAG_HAS_DEFAULT);
g_assert_cmpstr (tp_connection_manager_param_get_dbus_signature (param), ==, "as");
- tp_connection_manager_param_get_default (param, &value);
- g_assert (G_VALUE_HOLDS (&value, G_TYPE_STRV));
- strv = g_value_get_boxed (&value);
- g_assert_cmpstr (strv[0], ==, "list");
- g_assert_cmpstr (strv[1], ==, " of");
- g_assert_cmpstr (strv[2], ==, " misc ");
- g_assert (strv[3] == NULL);
- g_value_unset (&value);
+ variant = tp_connection_manager_param_dup_default_variant (param);
+ g_assert_cmpstr (g_variant_get_type_string (variant), ==, "as");
+ g_assert_cmpuint (g_variant_n_children (variant), ==, 3);
+ g_variant_get_child (variant, 0, "&s", &s);
+ g_assert_cmpstr (s, ==, "list");
+ g_variant_get_child (variant, 1, "&s", &s);
+ g_assert_cmpstr (s, ==, " of");
+ g_variant_get_child (variant, 2, "&s", &s);
+ g_assert_cmpstr (s, ==, " misc ");
+ g_variant_unref (variant);
param = g_ptr_array_index (tp_protocol_get_params (protocol), 5);
g_assert_cmpstr (tp_connection_manager_param_get_name (param), ==, "escaped-semicolon-in-list");
assert_param_flags (param, TP_CONN_MGR_PARAM_FLAG_HAS_DEFAULT);
g_assert_cmpstr (tp_connection_manager_param_get_dbus_signature (param), ==, "as");
- tp_connection_manager_param_get_default (param, &value);
- g_assert (G_VALUE_HOLDS (&value, G_TYPE_STRV));
- strv = g_value_get_boxed (&value);
- g_assert_cmpstr (strv[0], ==, "list;of");
- g_assert_cmpstr (strv[1], ==, "misc");
- g_assert (strv[2] == NULL);
- g_value_unset (&value);
+ variant = tp_connection_manager_param_dup_default_variant (param);
+ g_assert_cmpstr (g_variant_get_type_string (variant), ==, "as");
+ g_assert_cmpuint (g_variant_n_children (variant), ==, 2);
+ g_variant_get_child (variant, 0, "&s", &s);
+ g_assert_cmpstr (s, ==, "list;of");
+ g_variant_get_child (variant, 1, "&s", &s);
+ g_assert_cmpstr (s, ==, "misc");
+ g_variant_unref (variant);
param = g_ptr_array_index (tp_protocol_get_params (protocol), 6);
g_assert_cmpstr (tp_connection_manager_param_get_name (param), ==, "doubly-escaped-semicolon-in-list");
assert_param_flags (param, TP_CONN_MGR_PARAM_FLAG_HAS_DEFAULT);
g_assert_cmpstr (tp_connection_manager_param_get_dbus_signature (param), ==, "as");
- tp_connection_manager_param_get_default (param, &value);
- g_assert (G_VALUE_HOLDS (&value, G_TYPE_STRV));
- strv = g_value_get_boxed (&value);
- g_assert_cmpstr (strv[0], ==, "list\\");
- g_assert_cmpstr (strv[1], ==, "of");
- g_assert_cmpstr (strv[2], ==, "misc");
- g_assert (strv[3] == NULL);
- g_value_unset (&value);
+ variant = tp_connection_manager_param_dup_default_variant (param);
+ g_assert_cmpstr (g_variant_get_type_string (variant), ==, "as");
+ g_assert_cmpuint (g_variant_n_children (variant), ==, 3);
+ g_variant_get_child (variant, 0, "&s", &s);
+ g_assert_cmpstr (s, ==, "list\\");
+ g_variant_get_child (variant, 1, "&s", &s);
+ g_assert_cmpstr (s, ==, "of");
+ g_variant_get_child (variant, 2, "&s", &s);
+ g_assert_cmpstr (s, ==, "misc");
+ g_variant_unref (variant);
param = g_ptr_array_index (tp_protocol_get_params (protocol), 7);
g_assert_cmpstr (tp_connection_manager_param_get_name (param), ==, "triply-escaped-semicolon-in-list");
assert_param_flags (param, TP_CONN_MGR_PARAM_FLAG_HAS_DEFAULT);
g_assert_cmpstr (tp_connection_manager_param_get_dbus_signature (param), ==, "as");
- tp_connection_manager_param_get_default (param, &value);
- g_assert (G_VALUE_HOLDS (&value, G_TYPE_STRV));
- strv = g_value_get_boxed (&value);
- g_assert_cmpstr (strv[0], ==, "list\\;of");
- g_assert_cmpstr (strv[1], ==, "misc");
- g_assert (strv[2] == NULL);
- g_value_unset (&value);
+ variant = tp_connection_manager_param_dup_default_variant (param);
+ g_assert_cmpstr (g_variant_get_type_string (variant), ==, "as");
+ g_assert_cmpuint (g_variant_n_children (variant), ==, 2);
+ g_variant_get_child (variant, 0, "&s", &s);
+ g_assert_cmpstr (s, ==, "list\\;of");
+ g_variant_get_child (variant, 1, "&s", &s);
+ g_assert_cmpstr (s, ==, "misc");
+ g_variant_unref (variant);
param = g_ptr_array_index (tp_protocol_get_params (protocol), 8);
g_assert_cmpstr (tp_connection_manager_param_get_name (param), ==, "empty-list");
assert_param_flags (param, TP_CONN_MGR_PARAM_FLAG_HAS_DEFAULT);
g_assert_cmpstr (tp_connection_manager_param_get_dbus_signature (param), ==, "as");
- tp_connection_manager_param_get_default (param, &value);
- g_assert (G_VALUE_HOLDS (&value, G_TYPE_STRV));
- strv = g_value_get_boxed (&value);
- g_assert (strv == NULL || strv[0] == NULL);
- g_value_unset (&value);
+ variant = tp_connection_manager_param_dup_default_variant (param);
+ g_assert_cmpstr (g_variant_get_type_string (variant), ==, "as");
+ g_assert_cmpuint (g_variant_n_children (variant), ==, 0);
+ g_variant_unref (variant);
param = g_ptr_array_index (tp_protocol_get_params (protocol), 9);
g_assert_cmpstr (tp_connection_manager_param_get_name (param), ==, "escaped-semicolon");
assert_param_flags (param, TP_CONN_MGR_PARAM_FLAG_HAS_DEFAULT);
g_assert_cmpstr (tp_connection_manager_param_get_dbus_signature (param), ==, "s");
- tp_connection_manager_param_get_default (param, &value);
- g_assert (G_VALUE_HOLDS_STRING (&value));
- g_assert_cmpstr (g_value_get_string (&value), ==, "foo\\;bar");
- g_value_unset (&value);
+ variant = tp_connection_manager_param_dup_default_variant (param);
+ g_assert_cmpstr (g_variant_get_type_string (variant), ==, "s");
+ g_assert_cmpstr (g_variant_get_string (variant, NULL), ==, "foo\\;bar");
+ g_variant_unref (variant);
param = g_ptr_array_index (tp_protocol_get_params (protocol), 10);
g_assert_cmpstr (tp_connection_manager_param_get_name (param), ==, "object");
assert_param_flags (param, TP_CONN_MGR_PARAM_FLAG_HAS_DEFAULT);
g_assert_cmpstr (tp_connection_manager_param_get_dbus_signature (param), ==, "o");
- tp_connection_manager_param_get_default (param, &value);
- g_assert (G_VALUE_HOLDS (&value, DBUS_TYPE_G_OBJECT_PATH));
- g_assert_cmpstr (g_value_get_boxed (&value), ==, "/misc");
- g_value_unset (&value);
+ variant = tp_connection_manager_param_dup_default_variant (param);
+ g_assert_cmpstr (g_variant_get_type_string (variant), ==, "o");
+ g_assert_cmpstr (g_variant_get_string (variant, NULL), ==, "/misc");
+ g_variant_unref (variant);
+ /* We can't currently distinguish between u and q because we still go
+ * via dbus-glib */
param = g_ptr_array_index (tp_protocol_get_params (protocol), 11);
g_assert_cmpstr (tp_connection_manager_param_get_name (param), ==, "q");
assert_param_flags (param, TP_CONN_MGR_PARAM_FLAG_HAS_DEFAULT);
g_assert_cmpstr (tp_connection_manager_param_get_dbus_signature (param), ==, "q");
- tp_connection_manager_param_get_default (param, &value);
- g_assert (G_VALUE_HOLDS_UINT (&value));
- g_assert_cmpint (g_value_get_uint (&value), ==, 42);
- g_value_unset (&value);
+ variant = tp_connection_manager_param_dup_default_variant (param);
+ g_assert_cmpstr (g_variant_get_type_string (variant), ==, "u");
+ g_assert_cmpuint (g_variant_get_uint32 (variant), ==, 42);
+ g_variant_unref (variant);
param = g_ptr_array_index (tp_protocol_get_params (protocol), 12);
g_assert_cmpstr (tp_connection_manager_param_get_name (param), ==, "u");
assert_param_flags (param, TP_CONN_MGR_PARAM_FLAG_HAS_DEFAULT);
g_assert_cmpstr (tp_connection_manager_param_get_dbus_signature (param), ==, "u");
- tp_connection_manager_param_get_default (param, &value);
- g_assert (G_VALUE_HOLDS_UINT (&value));
- g_assert_cmpint (g_value_get_uint (&value), ==, 42);
- g_value_unset (&value);
+ variant = tp_connection_manager_param_dup_default_variant (param);
+ g_assert_cmpstr (g_variant_get_type_string (variant), ==, "u");
+ g_assert_cmpuint (g_variant_get_uint32 (variant), ==, 42);
+ g_variant_unref (variant);
param = g_ptr_array_index (tp_protocol_get_params (protocol), 13);
g_assert_cmpstr (tp_connection_manager_param_get_name (param), ==, "t");
assert_param_flags (param, TP_CONN_MGR_PARAM_FLAG_HAS_DEFAULT);
g_assert_cmpstr (tp_connection_manager_param_get_dbus_signature (param), ==, "t");
- tp_connection_manager_param_get_default (param, &value);
- g_assert (G_VALUE_HOLDS_UINT64 (&value));
- g_assert_cmpuint ((guint) g_value_get_uint64 (&value), ==, 42);
- g_value_unset (&value);
+ variant = tp_connection_manager_param_dup_default_variant (param);
+ g_assert_cmpstr (g_variant_get_type_string (variant), ==, "t");
+ g_assert_cmpuint (g_variant_get_uint64 (variant), ==, 42);
+ g_variant_unref (variant);
+ /* We can't currently distinguish between i and n because we still go
+ * via dbus-glib */
param = g_ptr_array_index (tp_protocol_get_params (protocol), 14);
g_assert_cmpstr (tp_connection_manager_param_get_name (param), ==, "n");
assert_param_flags (param, TP_CONN_MGR_PARAM_FLAG_HAS_DEFAULT);
g_assert_cmpstr (tp_connection_manager_param_get_dbus_signature (param), ==, "n");
- tp_connection_manager_param_get_default (param, &value);
- g_assert (G_VALUE_HOLDS_INT (&value));
- g_assert_cmpint (g_value_get_int (&value), ==, -42);
- g_value_unset (&value);
+ variant = tp_connection_manager_param_dup_default_variant (param);
+ g_assert_cmpstr (g_variant_get_type_string (variant), ==, "i");
+ g_assert_cmpint (g_variant_get_int32 (variant), ==, -42);
+ g_variant_unref (variant);
param = g_ptr_array_index (tp_protocol_get_params (protocol), 15);
g_assert_cmpstr (tp_connection_manager_param_get_name (param), ==, "i");
assert_param_flags (param, TP_CONN_MGR_PARAM_FLAG_HAS_DEFAULT);
g_assert_cmpstr (tp_connection_manager_param_get_dbus_signature (param), ==, "i");
- tp_connection_manager_param_get_default (param, &value);
- g_assert (G_VALUE_HOLDS_INT (&value));
- g_assert_cmpint (g_value_get_int (&value), ==, -42);
- g_value_unset (&value);
+ variant = tp_connection_manager_param_dup_default_variant (param);
+ g_assert_cmpstr (g_variant_get_type_string (variant), ==, "i");
+ g_assert_cmpint (g_variant_get_int32 (variant), ==, -42);
+ g_variant_unref (variant);
param = g_ptr_array_index (tp_protocol_get_params (protocol), 16);
g_assert_cmpstr (tp_connection_manager_param_get_name (param), ==, "x");
assert_param_flags (param, TP_CONN_MGR_PARAM_FLAG_HAS_DEFAULT);
g_assert_cmpstr (tp_connection_manager_param_get_dbus_signature (param), ==, "x");
- tp_connection_manager_param_get_default (param, &value);
- g_assert (G_VALUE_HOLDS_INT64 (&value));
- g_assert_cmpint ((int) g_value_get_int64 (&value), ==, -42);
- g_value_unset (&value);
+ variant = tp_connection_manager_param_dup_default_variant (param);
+ g_assert_cmpstr (g_variant_get_type_string (variant), ==, "x");
+ g_assert_cmpint (g_variant_get_int64 (variant), ==, -42);
+ g_variant_unref (variant);
param = g_ptr_array_index (tp_protocol_get_params (protocol), 17);
g_assert_cmpstr (tp_connection_manager_param_get_name (param), ==, "d");
assert_param_flags (param, TP_CONN_MGR_PARAM_FLAG_HAS_DEFAULT);
g_assert_cmpstr (tp_connection_manager_param_get_dbus_signature (param), ==, "d");
- tp_connection_manager_param_get_default (param, &value);
- g_assert (G_VALUE_HOLDS_DOUBLE (&value));
- g_value_unset (&value);
+ variant = tp_connection_manager_param_dup_default_variant (param);
+ g_assert_cmpstr (g_variant_get_type_string (variant), ==, "d");
+ g_variant_unref (variant);
param = g_ptr_array_index (tp_protocol_get_params (protocol), 18);
g_assert_cmpstr (tp_connection_manager_param_get_name (param), ==, "empty-string-in-list");
assert_param_flags (param, TP_CONN_MGR_PARAM_FLAG_HAS_DEFAULT);
g_assert_cmpstr (tp_connection_manager_param_get_dbus_signature (param), ==, "as");
- tp_connection_manager_param_get_default (param, &value);
- g_assert (G_VALUE_HOLDS (&value, G_TYPE_STRV));
- strv = g_value_get_boxed (&value);
- g_assert_cmpstr (strv[0], ==, "");
- g_assert (strv[1] == NULL);
- g_value_unset (&value);
+ variant = tp_connection_manager_param_dup_default_variant (param);
+ g_assert_cmpstr (g_variant_get_type_string (variant), ==, "as");
+ g_assert_cmpuint (g_variant_n_children (variant), ==, 1);
+ g_variant_get_child (variant, 0, "&s", &s);
+ g_assert_cmpstr (s, ==, "");
+ g_variant_unref (variant);
param = g_ptr_array_index (tp_protocol_get_params (protocol), 19);
g_assert_cmpstr (tp_connection_manager_param_get_name (param), ==, "true");
assert_param_flags (param, TP_CONN_MGR_PARAM_FLAG_HAS_DEFAULT);
g_assert_cmpstr (tp_connection_manager_param_get_dbus_signature (param), ==, "b");
- tp_connection_manager_param_get_default (param, &value);
- g_assert (G_VALUE_HOLDS_BOOLEAN (&value));
- g_assert_cmpint (g_value_get_boolean (&value), ==, TRUE);
- g_value_unset (&value);
+ variant = tp_connection_manager_param_dup_default_variant (param);
+ g_assert_cmpstr (g_variant_get_type_string (variant), ==, "b");
+ g_assert_cmpint (g_variant_get_boolean (variant), ==, TRUE);
+ g_variant_unref (variant);
param = g_ptr_array_index (tp_protocol_get_params (protocol), 20);
g_assert_cmpstr (tp_connection_manager_param_get_name (param), ==, "false");
assert_param_flags (param, TP_CONN_MGR_PARAM_FLAG_HAS_DEFAULT);
g_assert_cmpstr (tp_connection_manager_param_get_dbus_signature (param), ==, "b");
- tp_connection_manager_param_get_default (param, &value);
- g_assert (G_VALUE_HOLDS_BOOLEAN (&value));
- g_assert_cmpint (g_value_get_boolean (&value), ==, FALSE);
- g_value_unset (&value);
+ variant = tp_connection_manager_param_dup_default_variant (param);
+ g_assert_cmpstr (g_variant_get_type_string (variant), ==, "b");
+ g_assert_cmpint (g_variant_get_boolean (variant), ==, FALSE);
+ g_variant_unref (variant);
param = g_ptr_array_index (tp_protocol_get_params (protocol), 21);
g_assert_cmpstr (tp_connection_manager_param_get_name (param), ==, "y");
assert_param_flags (param, TP_CONN_MGR_PARAM_FLAG_HAS_DEFAULT);
g_assert_cmpstr (tp_connection_manager_param_get_dbus_signature (param), ==, "y");
- tp_connection_manager_param_get_default (param, &value);
- g_assert (G_VALUE_HOLDS_UCHAR (&value));
- g_assert_cmpint (g_value_get_uchar (&value), ==, 42);
- g_value_unset (&value);
+ variant = tp_connection_manager_param_dup_default_variant (param);
+ g_assert_cmpstr (g_variant_get_type_string (variant), ==, "y");
+ g_assert_cmpint (g_variant_get_byte (variant), ==, 42);
+ g_variant_unref (variant);
param = g_ptr_array_index (tp_protocol_get_params (protocol), 22);
g_assert_cmpstr (tp_connection_manager_param_get_name (param), ==, "ao");
assert_param_flags (param, TP_CONN_MGR_PARAM_FLAG_HAS_DEFAULT);
g_assert_cmpstr (tp_connection_manager_param_get_dbus_signature (param), ==, "ao");
- tp_connection_manager_param_get_default (param, &value);
- g_assert (G_VALUE_HOLDS (&value,
- TP_ARRAY_TYPE_OBJECT_PATH_LIST));
- arr = g_value_get_boxed (&value);
- g_assert_cmpuint (arr->len, ==, 2);
- g_assert_cmpstr ((gchar *) g_ptr_array_index (arr, 0), ==, "/misc");
- g_assert_cmpstr ((gchar *) g_ptr_array_index (arr, 1), ==, "/other");
- g_value_unset (&value);
+ variant = tp_connection_manager_param_dup_default_variant (param);
+ g_assert_cmpstr (g_variant_get_type_string (variant), ==, "ao");
+ g_assert_cmpuint (g_variant_n_children (variant), ==, 2);
+ g_variant_get_child (variant, 0, "&o", &s);
+ g_assert_cmpstr (s, ==, "/misc");
+ g_variant_get_child (variant, 1, "&o", &s);
+ g_assert_cmpstr (s, ==, "/other");
+ g_variant_unref (variant);
g_assert_cmpuint (tp_protocol_get_params (protocol)->len, ==, 23);
}