[gobject-introspection] Everything: more tests for integer array parameters.
- From: Johan Bilien <jobi src gnome org>
- To: svn-commits-list gnome org
- Subject: [gobject-introspection] Everything: more tests for integer array parameters.
- Date: Tue, 12 May 2009 11:06:04 -0400 (EDT)
commit 26ea778b1533a8499cfb2e98c25037a107569e14
Author: C. Scott Ananian <cscott litl com>
Date: Fri May 1 16:32:33 2009 -0400
Everything: more tests for integer array parameters.
---
tests/everything/everything.c | 87 ++++++++++++++++++++++++++++++++++++++++-
tests/everything/everything.h | 6 +++
2 files changed, 92 insertions(+), 1 deletions(-)
diff --git a/tests/everything/everything.c b/tests/everything/everything.c
index feab26c..d02182d 100644
--- a/tests/everything/everything.c
+++ b/tests/everything/everything.c
@@ -255,7 +255,7 @@ static const char *test_sequence[] = {"1", "2", "3"};
/**
* test_array_int_in:
- * @n_ints:
+ * @n_ints:
* @ints: (array length=n_ints): List of ints
*/
int
@@ -267,6 +267,64 @@ test_array_int_in (int n_ints, int *ints)
return sum;
}
+/**
+ * test_array_gint8_in:
+ * @n_ints:
+ * @ints: (array length=n_ints): List of ints
+ */
+int
+test_array_gint8_in (int n_ints, gint8 *ints)
+{
+ int i, sum = 0;
+ for (i = 0; i < n_ints; i++)
+ sum += ints[i];
+ return sum;
+}
+
+/**
+ * test_array_gint16_in:
+ * @n_ints:
+ * @ints: (array length=n_ints): List of ints
+ */
+int
+test_array_gint16_in (int n_ints, gint16 *ints)
+{
+ int i, sum = 0;
+ for (i = 0; i < n_ints; i++)
+ sum += ints[i];
+ return sum;
+}
+
+/**
+ * test_array_gint32_in:
+ * @n_ints:
+ * @ints: (array length=n_ints): List of ints
+ */
+gint32
+test_array_gint32_in (int n_ints, gint32 *ints)
+{
+ int i;
+ gint32 sum = 0;
+ for (i = 0; i < n_ints; i++)
+ sum += ints[i];
+ return sum;
+}
+
+/**
+ * test_array_gint64_in:
+ * @n_ints:
+ * @ints: (array length=n_ints): List of ints
+ */
+gint64
+test_array_gint64_in (int n_ints, gint64 *ints)
+{
+ int i;
+ gint64 sum = 0;
+ for (i = 0; i < n_ints; i++)
+ sum += ints[i];
+ return sum;
+}
+
gboolean
test_strv_in (char **arr)
{
@@ -319,6 +377,33 @@ test_strv_out (void)
return ret;
}
+/**
+ * test_array_int_full_out:
+ * @len: length of the returned array.
+ * Returns: (array length=len) (transfer full): a new array of integers.
+ */
+int *
+test_array_int_full_out(int *len) {
+ int *result, i;
+ *len = 5;
+ result = g_malloc0(sizeof(*result) * (*len));
+ for (i=1; i < (*len); i++)
+ result[i] = result[i-1] + 1;
+ return result;
+}
+
+/**
+ * test_array_int_none_out:
+ * @len: length of the returned array.
+ * Returns: (array length=len) (transfer none): a static array of integers.
+ */
+int *
+test_array_int_none_out(int *len) {
+ static int result[5] = { 1, 2, 3, 4, 5 };
+ *len = 5;
+ return result;
+}
+
/* interface */
/************************************************************************/
diff --git a/tests/everything/everything.h b/tests/everything/everything.h
index f2b470d..023a651 100644
--- a/tests/everything/everything.h
+++ b/tests/everything/everything.h
@@ -38,8 +38,14 @@ GSList *test_filename_return (void);
/* array */
gboolean test_strv_in (char **arr);
int test_array_int_in (int n_ints, int *ints);
+int test_array_gint8_in (int n_ints, gint8 *ints);
+int test_array_gint16_in (int n_ints, gint16 *ints);
+gint32 test_array_gint32_in (int n_ints, gint32 *ints);
+gint64 test_array_gint64_in (int n_ints, gint64 *ints);
char *test_array_gtype_in (int n_types, GType *types);
char **test_strv_out (void);
+int *test_array_int_full_out(int *len);
+int *test_array_int_none_out(int *len);
/* interface */
/* GList */
G_CONST_RETURN GList *test_glist_nothing_return (void);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]