gplugin/gplugin

Parents 6966466e0e43
Children 4fb61c981e56
Update test-loader-registration to use a new instance of GPluginManager

This avoids using private API and fixes the build on Windows.

Testing Done:
Ran the tests under an msys2 mingw64 shell without issue.

Reviewed at https://reviews.imfreedom.org/r/3025/
--- a/gplugin/gplugin-private.h Wed Feb 28 18:58:38 2024 -0600
+++ b/gplugin/gplugin-private.h Tue Mar 12 03:44:26 2024 -0500
@@ -31,9 +31,13 @@
G_BEGIN_DECLS
+G_GNUC_INTERNAL
void gplugin_manager_private_init(gboolean register_native_loader);
+
+G_GNUC_INTERNAL
void gplugin_manager_private_uninit(void);
+G_GNUC_INTERNAL
gboolean gplugin_boolean_accumulator(
GSignalInvocationHint *hint,
GValue *return_accu,
--- a/gplugin/tests/meson.build Wed Feb 28 18:58:38 2024 -0600
+++ b/gplugin/tests/meson.build Tue Mar 12 03:44:26 2024 -0500
@@ -30,6 +30,7 @@
'id-collision': ['id-collision'],
'id-normalize': [],
'loader': [],
+ 'loader-registration': [],
'newest-version': ['newest-version'],
'option-group': [],
'plugin-manager-paths': [],
@@ -71,18 +72,6 @@
depends: depends)
endforeach
-# This test requires internal private API.
-e = executable('test-loader-registration', 'test-loader-registration.c',
- dependencies: [
- gplugin_dep.partial_dependency(compile_args: true,
- includes: true,
- sources: true),
- GLIB,
- GOBJECT,
- GMODULE],
- objects: gplugin.extract_all_objects(recursive: true))
-test('loader-registration', e)
-
#######################################
# Native Loader
#######################################
--- a/gplugin/tests/test-loader-registration.c Wed Feb 28 18:58:38 2024 -0600
+++ b/gplugin/tests/test-loader-registration.c Tue Mar 12 03:44:26 2024 -0500
@@ -15,11 +15,9 @@
* License along with this library; if not, see <https://www.gnu.org/licenses/>.
*/
-#include <gplugin.h>
+#include <glib.h>
-#include "../gplugin-private.h"
-
-#include <glib.h>
+#include <gplugin.h>
/******************************************************************************
* GObject Implementation
@@ -109,7 +107,7 @@
G_GNUC_UNUSED GPluginLoader *loader,
gpointer data)
{
- gint *counter = data;
+ guint *counter = data;
*counter = *counter + 1;
}
@@ -120,16 +118,15 @@
static void
test_gplugin_manager_loader_register_unregister(void)
{
+ GPluginLoader *loader = NULL;
GPluginManager *manager = NULL;
- GPluginLoader *loader = NULL;
GError *error = NULL;
gboolean ret;
- gint registrations = 0, unregistrations = 0;
+ guint registrations = 0;
+ guint unregistrations = 0;
- gplugin_manager_private_uninit();
- gplugin_manager_private_init(TRUE);
+ manager = g_object_new(GPLUGIN_TYPE_MANAGER, NULL);
- manager = gplugin_manager_get_default();
g_signal_connect(
manager,
"loader-registered",
@@ -154,22 +151,22 @@
g_assert_cmpuint(registrations, ==, 1);
g_assert_cmpuint(unregistrations, ==, 1);
- g_clear_object(&loader);
+ g_assert_finalize_object(loader);
+ g_assert_finalize_object(manager);
}
static void
test_gplugin_manager_loader_register_twice(void)
{
+ GPluginLoader *loader = NULL;
GPluginManager *manager = NULL;
- GPluginLoader *loader = NULL;
GError *error = NULL;
gboolean ret;
- guint registrations = 0, unregistrations = 0;
+ guint registrations = 0;
+ guint unregistrations = 0;
- gplugin_manager_private_uninit();
- gplugin_manager_private_init(TRUE);
+ manager = g_object_new(GPLUGIN_TYPE_MANAGER, NULL);
- manager = gplugin_manager_get_default();
g_signal_connect(
manager,
"loader-registered",
@@ -199,22 +196,22 @@
g_assert_cmpuint(registrations, ==, 1);
g_assert_cmpuint(unregistrations, ==, 1);
- g_clear_object(&loader);
+ g_assert_finalize_object(loader);
+ g_assert_finalize_object(manager);
}
static void
test_gplugin_manager_loader_unregister_twice(void)
{
+ GPluginLoader *loader = NULL;
GPluginManager *manager = NULL;
- GPluginLoader *loader = NULL;
GError *error = NULL;
gboolean ret;
- guint registrations = 0, unregistrations = 0;
+ guint registrations = 0;
+ guint unregistrations = 0;
- gplugin_manager_private_uninit();
- gplugin_manager_private_init(TRUE);
+ manager = g_object_new(GPLUGIN_TYPE_MANAGER, NULL);
- manager = gplugin_manager_get_default();
g_signal_connect(
manager,
"loader-registered",
@@ -244,7 +241,8 @@
g_assert_cmpuint(registrations, ==, 1);
g_assert_cmpuint(unregistrations, ==, 1);
- g_clear_object(&loader);
+ g_assert_finalize_object(loader);
+ g_assert_finalize_object(manager);
}
/******************************************************************************