gio/tests: Add tests for flatpak infos

Support testing flatpak infos, we do it by faking /.flatpak-info file in
case we're building in test mode.
This commit is contained in:
Marco Trevisan (Treviño)
2022-11-24 19:07:27 +01:00
parent e6eebfd9c3
commit 92fae633a0
10 changed files with 313 additions and 2 deletions

View File

@@ -77,13 +77,21 @@ sandbox_info_read (void)
case G_SANDBOX_TYPE_FLATPAK:
{
GKeyFile *keyfile;
const char *keyfile_path = "/.flatpak-info";
use_portal = TRUE;
network_available = FALSE;
dconf_access = FALSE;
keyfile = g_key_file_new ();
if (g_key_file_load_from_file (keyfile, "/.flatpak-info", G_KEY_FILE_NONE, NULL))
#ifdef G_PORTAL_SUPPORT_TEST
char *test_key_file =
g_build_filename (g_get_user_runtime_dir (), keyfile_path, NULL);
keyfile_path = test_key_file;
#endif
if (g_key_file_load_from_file (keyfile, keyfile_path, G_KEY_FILE_NONE, NULL))
{
char **shared = NULL;
char *dconf_policy = NULL;
@@ -104,6 +112,10 @@ sandbox_info_read (void)
}
}
#ifdef G_PORTAL_SUPPORT_TEST
g_clear_pointer (&test_key_file, g_free);
#endif
g_key_file_unref (keyfile);
}
break;