From aceeef47f4aac3d340ff71a1fd86e7dfb98e7db2 Mon Sep 17 00:00:00 2001 From: Matthias Clasen Date: Thu, 1 Apr 2021 16:32:30 -0400 Subject: [PATCH 1/3] Add one more compose test --- testsuite/gtk/composetable.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/testsuite/gtk/composetable.c b/testsuite/gtk/composetable.c index 6f5f67c5a8..ea17e7a6a0 100644 --- a/testsuite/gtk/composetable.c +++ b/testsuite/gtk/composetable.c @@ -329,12 +329,21 @@ match_algorithmic (void) g_assert_cmphex (ch, ==, 0x1e09); ret = gtk_check_algorithmically (buffer, 2, &ch); + g_assert_true (ret); + buffer[0] = GDK_KEY_dead_acute; buffer[1] = GDK_KEY_dead_cedilla; buffer[2] = GDK_KEY_dead_grave; ret = gtk_check_algorithmically (buffer, 3, &ch); g_assert_false (ret); + + buffer[0] = GDK_KEY_dead_diaeresis; + buffer[1] = GDK_KEY_a; + + ret = gtk_check_algorithmically (buffer, 2, &ch); + g_assert_true (ret); + g_assert_cmphex (ch, ==, 0xe4); } int From 08913deba5171f98ff601fbdcffa2e0f9634d91d Mon Sep 17 00:00:00 2001 From: Matthias Clasen Date: Thu, 1 Apr 2021 17:00:31 -0400 Subject: [PATCH 2/3] Add some more gsk tests The css-background test contains a node pattern that is optimized in the ngl renderer. --- testsuite/gsk/compare/borders-scaled.node | 13 +++++ testsuite/gsk/compare/borders-scaled.png | Bin 0 -> 836 bytes testsuite/gsk/compare/css-background.node | 61 ++++++++++++++++++++++ testsuite/gsk/compare/css-background.png | Bin 0 -> 1553 bytes testsuite/gsk/meson.build | 2 + 5 files changed, 76 insertions(+) create mode 100644 testsuite/gsk/compare/borders-scaled.node create mode 100644 testsuite/gsk/compare/borders-scaled.png create mode 100644 testsuite/gsk/compare/css-background.node create mode 100644 testsuite/gsk/compare/css-background.png diff --git a/testsuite/gsk/compare/borders-scaled.node b/testsuite/gsk/compare/borders-scaled.node new file mode 100644 index 0000000000..c5583b91d8 --- /dev/null +++ b/testsuite/gsk/compare/borders-scaled.node @@ -0,0 +1,13 @@ +transform { + child: container { + border { + outline: 5 5 50 50; + } + color { + color: rgba(0, 0, 0, 0); + bounds: 0 0 110 110; + } + } + + transform: translate(110, 0) scale(3,3); +} diff --git a/testsuite/gsk/compare/borders-scaled.png b/testsuite/gsk/compare/borders-scaled.png new file mode 100644 index 0000000000000000000000000000000000000000..21c701e35b69406c528f74226995fa8491cd7281 GIT binary patch literal 836 zcmeAS@N?(olHy`uVBq!ia0y~yVDtiE4mO}jwWb&=kYY>nc6VX;4}uH!E}zW6!1UA8 z#WAE}&f6P?e1{bT7#yuX{onuQ%F1mIRFu<~J$GpgJ5UJJhYt3f+PUMO+)dU$QMS_! zUVZ+;#!#j{h2f#poTodFaNW1aIo&Iyz@h3O;MJfog~3sSu_=IwWg!cP6Q@ASsKgKm slIsuFR2PUHFuMbeI`r5d2K+yZ^~Kd#^uv2*9sv2q)78&qol`;+0AR_Lga7~l literal 0 HcmV?d00001 diff --git a/testsuite/gsk/compare/css-background.node b/testsuite/gsk/compare/css-background.node new file mode 100644 index 0000000000..5859a60886 --- /dev/null +++ b/testsuite/gsk/compare/css-background.node @@ -0,0 +1,61 @@ +transform { + transform: scale(16,16); + child: container { + + clip { + clip: 0 0 30 30; + child: container { + rounded-clip { + clip: 5 5 50 50 / 5; + child: color { + color: rgba(255, 0, 0, 255); + bounds: 5 5 50 50; + } + } + border { + outline: 5 5 50 50 / 5; + widths: 3; + colors: yellow; + } + } + } + + debug { + message: "Clipped-out area"; + child: container { + + color { + color: black; + bounds: 7 5 5 1; + } + + color { + color: black; + bounds: 6 6 2 1; + } + + color { + color: black; + bounds: 5 7 2 1; + } + + color { + color: black; + bounds: 5 8 1 3; + } + + color { + color: black; + bounds: 8 8 1 3; + } + + color { + color: black; + bounds: 8 8 3 1; + } + } + } + } +} + + diff --git a/testsuite/gsk/compare/css-background.png b/testsuite/gsk/compare/css-background.png new file mode 100644 index 0000000000000000000000000000000000000000..a7c4666ea0f1d1aee66b3ae1f42ff94b2ec1a8c6 GIT binary patch literal 1553 zcmeAS@N?(olHy`uVBq!ia0y~yV4MKL9Be?5hW%z|fD~Jjx4R3&e-K=-cll%n2G(Pq zE{-7;bKc%P$a%zohvDE4kN>*At0LH25|=T!KiT|Z>DM#2FEiiC`CWZr!u>A{40k*o z7(7^58eE8`QffaOd*RCU-GCwO2GN?3jKB7H9y>!LFDX_+bw9DKP53qMc+}?m_D^NF z3bds;7&;pmCUB5Ko&0D!;r7nsj2FmqJ4peBPm%CdO|NOyleN!We4kp=$qZ&w0 n6{BG`8fK)FA~a4fe;7qeg~issUTp;|;~6|%{an^LB{Ts51_XwC literal 0 HcmV?d00001 diff --git a/testsuite/gsk/meson.build b/testsuite/gsk/meson.build index edb06ad154..189621cb74 100644 --- a/testsuite/gsk/meson.build +++ b/testsuite/gsk/meson.build @@ -28,6 +28,7 @@ compare_render_tests = [ 'color-blur0', 'color-matrix-identity', 'cross-fade-in-opacity', + 'css-background', 'empty-blend', 'empty-blur', 'empty-border', @@ -68,6 +69,7 @@ compare_render_tests = [ 'repeat-negative-coords', 'inset-shadow-multiple', 'borders-rotated', + 'borders-scaled', 'blend-invisible-child', 'transform-in-transform', 'transform-in-transform-in-transform', From 5cb5bdc4eb41f803e1c6a693418771ef5dfba1e4 Mon Sep 17 00:00:00 2001 From: Matthias Clasen Date: Thu, 1 Apr 2021 17:03:54 -0400 Subject: [PATCH 3/3] testsuite: Sort gsk compare tests Easier to find things that way. --- testsuite/gsk/meson.build | 31 +++++++++++++++---------------- 1 file changed, 15 insertions(+), 16 deletions(-) diff --git a/testsuite/gsk/meson.build b/testsuite/gsk/meson.build index 189621cb74..8a15261ba0 100644 --- a/testsuite/gsk/meson.build +++ b/testsuite/gsk/meson.build @@ -20,11 +20,19 @@ node_parser = executable( ) compare_render_tests = [ - 'blend-normal', 'blend-difference', + 'blend-invisible-child', + 'blend-normal', + 'borders-rotated', + 'borders-scaled', 'clip-coordinates-2d', 'clip-coordinates-3d', + 'clip-in-rounded-clip1', + 'clip-in-rounded-clip2', + 'clip-in-rounded-clip3', + 'clipped-repeat-3d-ngl', 'clipped_rounded_clip', + 'clip-nested1', 'color-blur0', 'color-matrix-identity', 'cross-fade-in-opacity', @@ -49,37 +57,28 @@ compare_render_tests = [ 'empty-shadow', 'empty-texture', 'empty-transform', + 'inset-shadow-multiple', 'invalid-transform', + 'issue-3615', + 'nested-rounded-clips', 'opacity_clip', + 'opacity-overlapping-children', 'outset_shadow_offset_both', 'outset_shadow_offset_x', 'outset_shadow_offset_y', 'outset_shadow_rounded_top', 'outset_shadow_simple', 'scaled-cairo', + 'scale-up-down', 'shadow-in-opacity', 'texture-url', - 'color-matrix-identity', - 'clip-nested1', - 'scale-up-down', - 'opacity-overlapping-children', 'repeat', - 'repeat-texture', 'repeat-no-repeat', 'repeat-negative-coords', - 'inset-shadow-multiple', - 'borders-rotated', - 'borders-scaled', - 'blend-invisible-child', + 'repeat-texture', 'transform-in-transform', 'transform-in-transform-in-transform', - 'nested-rounded-clips', - 'clip-in-rounded-clip1', - 'clip-in-rounded-clip2', - 'clip-in-rounded-clip3', 'rounded-clip-in-clip-3d', # not really 3d, but cairo fails it - 'clipped-repeat-3d-ngl', - 'issue-3615' ] # these are too sensitive to differences in the renderers