From d6ab510feb72ac0ff30f0942e874e2d52f3e82f6 Mon Sep 17 00:00:00 2001 From: Martin Pitt Date: Fri, 21 Oct 2011 16:13:02 +0200 Subject: Add regress test method for a (skip) return value without out arguments This is a requisite for writing a pygobject test case for https://bugzilla.gnome.org/show_bug.cgi?id=662383 --- tests/scanner/Regress-1.0-expected.gir | 16 ++++++++++++++++ tests/scanner/regress.c | 24 ++++++++++++++++++++++++ tests/scanner/regress.h | 4 ++++ 3 files changed, 44 insertions(+) diff --git a/tests/scanner/Regress-1.0-expected.gir b/tests/scanner/Regress-1.0-expected.gir index d8cbd69c..161b5242 100644 --- a/tests/scanner/Regress-1.0-expected.gir +++ b/tests/scanner/Regress-1.0-expected.gir @@ -750,6 +750,22 @@ case. + + Check that the return value is skipped. Succeed if a is nonzero, otherwise +raise an error. + + %TRUE if the call succeeds, %FALSE if @error is set. + + + + + Parameter. + + + + diff --git a/tests/scanner/regress.c b/tests/scanner/regress.c index d1efb2e3..dcd4976e 100644 --- a/tests/scanner/regress.c +++ b/tests/scanner/regress.c @@ -2253,6 +2253,30 @@ regress_test_obj_skip_return_val (RegressTestObj *obj, return TRUE; } +/** + * regress_test_obj_skip_return_val_no_out: + * @obj: a #RegressTestObj + * @a: Parameter. + * @error: Return location for error. + * + * Check that the return value is skipped. Succeed if a is nonzero, otherwise + * raise an error. + * + * Returns: (skip): %TRUE if the call succeeds, %FALSE if @error is set. + */ +gboolean +regress_test_obj_skip_return_val_no_out (RegressTestObj *obj, + gint a, + GError **error) +{ + if (a == 0) { + g_set_error (error, G_IO_ERROR, G_IO_ERROR_FAILED, "a is zero"); + return FALSE; + } else { + return TRUE; + } +} + /** * regress_test_obj_skip_param: * @obj: A #RegressTestObj. diff --git a/tests/scanner/regress.h b/tests/scanner/regress.h index fa6e7c27..f76c1467 100644 --- a/tests/scanner/regress.h +++ b/tests/scanner/regress.h @@ -392,6 +392,10 @@ gboolean regress_test_obj_skip_return_val (RegressTestObj *obj, gint num2, GError **error); +gboolean regress_test_obj_skip_return_val_no_out (RegressTestObj *obj, + gint a, + GError **error); + gboolean regress_test_obj_skip_param (RegressTestObj *obj, gint a, gint *out_b, -- cgit v1.2.1