[pango] Try harder to skip tests on MacOs
- From: Matthias Clasen <matthiasc src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [pango] Try harder to skip tests on MacOs
- Date: Wed, 21 Jul 2021 12:20:57 +0000 (UTC)
commit 2a253d9bc76c0333e424aa0200a212b3fc57ab33
Author: Matthias Clasen <mclasen redhat com>
Date: Sat Jul 10 19:03:21 2021 -0400
Try harder to skip tests on MacOs
For tests where the wrong fonts break things,
check that we have Cantarell, and skip them
if not.
tests/test-itemize.c | 24 ++++++++++++++++++++++++
tests/test-layout.c | 24 ++++++++++++++++++++++++
2 files changed, 48 insertions(+)
---
diff --git a/tests/test-itemize.c b/tests/test-itemize.c
index 52556284..0a8515b8 100644
--- a/tests/test-itemize.c
+++ b/tests/test-itemize.c
@@ -236,6 +236,9 @@ test_itemize (gconstpointer d)
GError *error = NULL;
GString *dump;
gchar *diff;
+ PangoFontFamily **families;
+ int n_families;
+ gboolean found_cantarell;
char *old_locale = g_strdup (setlocale (LC_ALL, NULL));
setlocale (LC_ALL, "en_US.UTF-8");
@@ -250,6 +253,27 @@ test_itemize (gconstpointer d)
context = pango_font_map_create_context (pango_cairo_font_map_get_default ());
+ found_cantarell = FALSE;
+ pango_context_list_families (context, &families, &n_families);
+ for (int i = 0; i < n_families; i++)
+ {
+ if (strcmp (pango_font_family_get_name (families[i]), "Cantarell") == 0)
+ {
+ found_cantarell = TRUE;
+ break;
+ }
+ }
+ g_free (families);
+
+ if (!found_cantarell)
+ {
+ char *msg = g_strdup_printf ("Cantarell font not available, skipping itemization %s", filename);
+ g_test_skip (msg);
+ g_free (msg);
+ g_free (old_locale);
+ return;
+ }
+
expected_file = get_expected_filename (filename);
dump = g_string_sized_new (0);
diff --git a/tests/test-layout.c b/tests/test-layout.c
index 1e531031..8a1054b4 100644
--- a/tests/test-layout.c
+++ b/tests/test-layout.c
@@ -703,6 +703,9 @@ test_layout (gconstpointer d)
GError *error = NULL;
GString *dump;
gchar *diff;
+ PangoFontFamily **families;
+ int n_families;
+ gboolean found_cantarell;
char *old_locale = g_strdup (setlocale (LC_ALL, NULL));
setlocale (LC_ALL, "en_US.UTF-8");
@@ -718,6 +721,27 @@ test_layout (gconstpointer d)
if (context == NULL)
context = pango_font_map_create_context (pango_cairo_font_map_get_default ());
+ found_cantarell = FALSE;
+ pango_context_list_families (context, &families, &n_families);
+ for (int i = 0; i < n_families; i++)
+ {
+ if (strcmp (pango_font_family_get_name (families[i]), "Cantarell") == 0)
+ {
+ found_cantarell = TRUE;
+ break;
+ }
+ }
+ g_free (families);
+
+ if (!found_cantarell)
+ {
+ char *msg = g_strdup_printf ("Cantarell font not available, skipping itemization %s", filename);
+ g_test_skip (msg);
+ g_free (msg);
+ g_free (old_locale);
+ return;
+ }
+
expected_file = get_expected_filename (filename);
dump = g_string_sized_new (0);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]