[gobject-introspection] [gobject-introspection] Add test method for GDestroy with no user data



commit d86fc68738bb31e1ed26680ca5d1548721bc9de8
Author: Simon Feltman <s feltman gmail com>
Date:   Wed Oct 10 16:20:50 2012 -0700

    [gobject-introspection] Add test method for GDestroy with no user data
    
    Added regress_test_callback_destroy_notify_no_user_data.
    Updated Regress-1.0-expected.gir
    
    https://bugzilla.gnome.org/show_bug.cgi?id=685922

 tests/scanner/Regress-1.0-expected.gir |   20 ++++++++++++++++++++
 tests/scanner/regress.c                |   14 ++++++++++++++
 tests/scanner/regress.h                |    2 ++
 3 files changed, 36 insertions(+), 0 deletions(-)
---
diff --git a/tests/scanner/Regress-1.0-expected.gir b/tests/scanner/Regress-1.0-expected.gir
index a3e77db..8d123f7 100644
--- a/tests/scanner/Regress-1.0-expected.gir
+++ b/tests/scanner/Regress-1.0-expected.gir
@@ -2307,6 +2307,26 @@ is invoked.</doc>
         </parameter>
       </parameters>
     </function>
+    <function name="test_callback_destroy_notify_no_user_data"
+              c:identifier="regress_test_callback_destroy_notify_no_user_data">
+      <doc xml:whitespace="preserve">Adds a scope notified callback with no user data. This can invoke an error
+condition in bindings which needs to be tested.</doc>
+      <return-value transfer-ownership="none">
+        <type name="gint" c:type="int"/>
+      </return-value>
+      <parameters>
+        <parameter name="callback"
+                   transfer-ownership="none"
+                   scope="notified"
+                   destroy="1">
+          <type name="TestCallbackUserData"
+                c:type="RegressTestCallbackUserData"/>
+        </parameter>
+        <parameter name="notify" transfer-ownership="none" scope="async">
+          <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
+        </parameter>
+      </parameters>
+    </function>
     <function name="test_callback_thaw_async"
               c:identifier="regress_test_callback_thaw_async">
       <return-value transfer-ownership="none">
diff --git a/tests/scanner/regress.c b/tests/scanner/regress.c
index 2fba9fd..c6ca6b7 100644
--- a/tests/scanner/regress.c
+++ b/tests/scanner/regress.c
@@ -3324,6 +3324,20 @@ regress_test_callback_destroy_notify (RegressTestCallbackUserData callback,
 }
 
 /**
+ * regress_test_callback_destroy_notify_no_user_data:
+ * @callback: (scope notified):
+ *
+ * Adds a scope notified callback with no user data. This can invoke an error
+ * condition in bindings which needs to be tested.
+ **/
+int
+regress_test_callback_destroy_notify_no_user_data (RegressTestCallbackUserData callback,
+                              GDestroyNotify notify)
+{
+  return regress_test_callback_destroy_notify(callback, NULL, notify);
+}
+
+/**
  * regress_test_callback_thaw_notifications:
  *
  * Invokes all callbacks installed by #test_callback_destroy_notify(),
diff --git a/tests/scanner/regress.h b/tests/scanner/regress.h
index f2dae49..635ea7b 100644
--- a/tests/scanner/regress.h
+++ b/tests/scanner/regress.h
@@ -677,6 +677,8 @@ int regress_test_callback_user_data (RegressTestCallbackUserData callback,
 int regress_test_callback_destroy_notify (RegressTestCallbackUserData callback,
                                   gpointer user_data,
                                   GDestroyNotify notify);
+int regress_test_callback_destroy_notify_no_user_data (RegressTestCallbackUserData callback,
+                                  GDestroyNotify notify);
 int regress_test_callback_thaw_notifications (void);
 
 void regress_test_callback_async (RegressTestCallbackUserData callback, gpointer user_data);



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]