main: Add test initialization function
Since Clutter's backend relies on MetaBackend now, initialzation has to go through meta_init(), both in mutter and in gnome-shell. However the compositor enum and backend gtype used to enforce the environment used for tests are private, so instead expose a test initialization function that can be used from both mutter and gnome-shell. https://gitlab.gnome.org/GNOME/mutter/merge_requests/750
This commit is contained in:
parent
ccefa87351
commit
7e69d1400a
@ -87,6 +87,7 @@
|
|||||||
#ifdef HAVE_WAYLAND
|
#ifdef HAVE_WAYLAND
|
||||||
#include "backends/x11/nested/meta-backend-x11-nested.h"
|
#include "backends/x11/nested/meta-backend-x11-nested.h"
|
||||||
#include "wayland/meta-wayland.h"
|
#include "wayland/meta-wayland.h"
|
||||||
|
#include "wayland/meta-xwayland.h"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef HAVE_NATIVE_BACKEND
|
#ifdef HAVE_NATIVE_BACKEND
|
||||||
@ -741,3 +742,21 @@ meta_get_x11_display_policy (void)
|
|||||||
|
|
||||||
return META_DISPLAY_POLICY_MANDATORY;
|
return META_DISPLAY_POLICY_MANDATORY;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
meta_test_init (void)
|
||||||
|
{
|
||||||
|
#if defined(HAVE_WAYLAND)
|
||||||
|
g_autofree char *display_name = g_strdup ("mutter-test-display-XXXXXX");
|
||||||
|
|
||||||
|
display_name = mktemp (display_name);
|
||||||
|
|
||||||
|
meta_override_compositor_configuration (META_COMPOSITOR_TYPE_WAYLAND,
|
||||||
|
META_TYPE_BACKEND_X11_NESTED);
|
||||||
|
meta_wayland_override_display_name (display_name);
|
||||||
|
meta_xwayland_override_display_number (512 + 512 * rand());
|
||||||
|
meta_init ();
|
||||||
|
#else
|
||||||
|
g_error ("Tests require wayland support");
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
@ -75,4 +75,8 @@ void meta_exit (MetaExitCode code) G_GNUC_NORETURN;
|
|||||||
META_EXPORT
|
META_EXPORT
|
||||||
void meta_quit (MetaExitCode code);
|
void meta_quit (MetaExitCode code);
|
||||||
|
|
||||||
|
META_EXPORT
|
||||||
|
void meta_test_init (void);
|
||||||
|
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
@ -86,13 +86,7 @@ G_BEGIN_DECLS
|
|||||||
int \
|
int \
|
||||||
main (int argc, char *argv[]) \
|
main (int argc, char *argv[]) \
|
||||||
{ \
|
{ \
|
||||||
char *display_name = g_strdup ("mutter-test-display-XXXXXX");\
|
meta_test_init ();\
|
||||||
int fd = g_mkstemp (display_name);\
|
|
||||||
meta_wayland_override_display_name (display_name);\
|
|
||||||
meta_override_compositor_configuration (META_COMPOSITOR_TYPE_WAYLAND,\
|
|
||||||
META_TYPE_BACKEND_X11_NESTED);\
|
|
||||||
\
|
|
||||||
meta_init ();\
|
|
||||||
\
|
\
|
||||||
clutter_test_init (&argc, &argv); \
|
clutter_test_init (&argc, &argv); \
|
||||||
\
|
\
|
||||||
@ -100,8 +94,6 @@ main (int argc, char *argv[]) \
|
|||||||
units \
|
units \
|
||||||
} \
|
} \
|
||||||
\
|
\
|
||||||
close (fd);\
|
|
||||||
g_free (display_name);\
|
|
||||||
return clutter_test_run (); \
|
return clutter_test_run (); \
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user