summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorColin Walters <walters@verbum.org>2010-09-13 18:05:35 -0400
committerColin Walters <walters@verbum.org>2010-09-13 18:05:35 -0400
commit134f2bc9a37af3427371500090d563c8b5e9acd5 (patch)
tree38d3e2c2969e426ebdde4db18c9b68563e3d2fa1
parent9fffe0160d211f798b57ecbb13dd3a28c5a671cf (diff)
scanner: Add a test for G_TYPE_ARRAY and (element-type uint)
Similar to TelepathyGlib.
-rw-r--r--tests/scanner/Regress-1.0-expected.gir14
-rw-r--r--tests/scanner/regress.c27
2 files changed, 41 insertions, 0 deletions
diff --git a/tests/scanner/Regress-1.0-expected.gir b/tests/scanner/Regress-1.0-expected.gir
index 7831411..499008a 100644
--- a/tests/scanner/Regress-1.0-expected.gir
+++ b/tests/scanner/Regress-1.0-expected.gir
@@ -585,6 +585,20 @@ case.</doc>
<field name="string">
<type name="utf8" c:type="char*"/>
</field>
+ <glib:signal name="sig-with-array-prop">
+ <doc xml:whitespace="preserve">This test signal is like TelepathyGlib's</doc>
+ <return-value transfer-ownership="none">
+ <type name="none"/>
+ </return-value>
+ <parameters>
+ <parameter name="object" transfer-ownership="none">
+ <doc xml:whitespace="preserve">numbers</doc>
+ <array name="GLib.Array">
+ <type name="guint"/>
+ </array>
+ </parameter>
+ </parameters>
+ </glib:signal>
<glib:signal name="test">
<return-value transfer-ownership="none">
<type name="none"/>
diff --git a/tests/scanner/regress.c b/tests/scanner/regress.c
index 5e95457..c8d8fe6 100644
--- a/tests/scanner/regress.c
+++ b/tests/scanner/regress.c
@@ -1798,6 +1798,13 @@ regress_test_obj_default_matrix (RegressTestObj *obj, const char *somestr)
return 42;
}
+enum {
+ REGRESS_TEST_OBJ_SIGNAL_SIG_NEW_WITH_ARRAY_PROP,
+ N_REGRESS_TEST_OBJ_SIGNALS
+};
+
+static guint regress_test_obj_signals[N_REGRESS_TEST_OBJ_SIGNALS] = { 0 };
+
static void
regress_test_obj_class_init (RegressTestObjClass *klass)
{
@@ -1830,6 +1837,26 @@ regress_test_obj_class_init (RegressTestObjClass *klass)
1 /* n_params */,
param_types);
+ /**
+ * RegressTestObj::sig-with-array-prop:
+ * @self: an object
+ * @arr: (type GArray) (element-type uint): numbers
+ *
+ * This test signal is like TelepathyGlib's
+ * TpChannel:: group-members-changed-detailed:
+ */
+ regress_test_obj_signals[REGRESS_TEST_OBJ_SIGNAL_SIG_NEW_WITH_ARRAY_PROP] =
+ g_signal_new ("sig-with-array-prop",
+ G_TYPE_FROM_CLASS (gobject_class),
+ G_SIGNAL_RUN_LAST,
+ 0,
+ NULL,
+ NULL,
+ g_cclosure_marshal_VOID__BOXED,
+ G_TYPE_NONE,
+ 1,
+ G_TYPE_ARRAY);
+
gobject_class->set_property = regress_test_obj_set_property;
gobject_class->get_property = regress_test_obj_get_property;
gobject_class->dispose = regress_test_obj_dispose;