From: Matthias Clasen Date: Thu, 6 Feb 2020 04:35:39 +0000 (-0500) Subject: css tests: Ignore ".csd" vs ".solid-csd" X-Git-Tag: archive/raspbian/4.4.1+ds1-2+rpi1^2~18^2~20^2~89^2 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=e41e8072b1d337393fdf6bcc851db36b59a0073c;p=gtk4.git css tests: Ignore ".csd" vs ".solid-csd" It it hard to control which of the csd style classes we get, since it depends on details of the X server or compositor. Explicitly ignore this difference by replacing .solid-csd with .csd in the output. --- diff --git a/testsuite/css/style/test-css-style.c b/testsuite/css/style/test-css-style.c index 47e80ceacd..6e6a59466e 100644 --- a/testsuite/css/style/test-css-style.c +++ b/testsuite/css/style/test-css-style.c @@ -95,15 +95,35 @@ diff_with_file (const char *file1, return output; } +static char * +fixup_style_differences (const char *str) +{ + GRegex *regex; + char *result; + + /* normalize differences that creep in from hard-to-control environmental influences */ + regex = g_regex_new ("[.]solid-csd", 0, 0, NULL); + result = g_regex_replace_literal (regex, str, -1, 0, ".csd", 0, NULL); + g_regex_unref (regex); + + return result; +} + static void style_context_changed (GtkWidget *window, const char **output) { GtkStyleContext *context; + char *str; context = gtk_widget_get_style_context (window); - *output = gtk_style_context_to_string (context, GTK_STYLE_CONTEXT_PRINT_RECURSE | - GTK_STYLE_CONTEXT_PRINT_SHOW_STYLE); + str = gtk_style_context_to_string (context, GTK_STYLE_CONTEXT_PRINT_RECURSE | + GTK_STYLE_CONTEXT_PRINT_SHOW_STYLE); + + *output = fixup_style_differences (str); + + g_free (str); + g_main_context_wakeup (NULL); }