testsuite: Add tests for label overdraw
authorBenjamin Otte <otte@redhat.com>
Mon, 16 May 2022 20:26:09 +0000 (22:26 +0200)
committerMatthias Clasen <mclasen@redhat.com>
Sun, 29 May 2022 12:13:09 +0000 (08:13 -0400)
This brings back a subset of what quit-mnemonic.ui tested for, but
trying a lot harder to trigger the label overdrawing its allocation,
which will cause the text to be cut off when clipping is happening.

It should not be an issue at all with GTK4, but keeping that test around
is a good idea.

testsuite/reftests/label-overdraw-horizontal.ref.ui [new file with mode: 0644]
testsuite/reftests/label-overdraw-horizontal.ui [new file with mode: 0644]
testsuite/reftests/label-overdraw-vertical.ref.ui [new file with mode: 0644]
testsuite/reftests/label-overdraw-vertical.ui [new file with mode: 0644]
testsuite/reftests/meson.build

diff --git a/testsuite/reftests/label-overdraw-horizontal.ref.ui b/testsuite/reftests/label-overdraw-horizontal.ref.ui
new file mode 100644 (file)
index 0000000..b74f68b
--- /dev/null
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<interface>
+  <object class="GtkWindow">
+    <property name="decorated">0</property>
+    <property name="width-request">100</property>
+    <child>
+      <object class="GtkLabel">
+        <property name="label">letter is off</property>
+        <property name="xalign">0</property>
+        <attributes>
+          <attribute name="style" value="italic" start="0" end="-1"></attribute>
+        </attributes>
+      </object>
+    </child>
+  </object>
+</interface>
diff --git a/testsuite/reftests/label-overdraw-horizontal.ui b/testsuite/reftests/label-overdraw-horizontal.ui
new file mode 100644 (file)
index 0000000..218fc47
--- /dev/null
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<interface>
+  <object class="GtkWindow">
+    <property name="decorated">0</property>
+    <property name="width-request">100</property>
+    <child>
+      <object class="GtkLabel">
+        <property name="label">letter is off</property>
+        <property name="halign">start</property>
+        <property name="xalign">0</property>
+        <attributes>
+          <attribute name="style" value="italic" start="0" end="-1"></attribute>
+        </attributes>
+      </object>
+    </child>
+  </object>
+</interface>
diff --git a/testsuite/reftests/label-overdraw-vertical.ref.ui b/testsuite/reftests/label-overdraw-vertical.ref.ui
new file mode 100644 (file)
index 0000000..804965d
--- /dev/null
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<interface>
+  <object class="GtkWindow">
+    <property name="decorated">0</property>
+    <property name="height-request">100</property>
+    <child>
+      <object class="GtkLabel">
+        <property name="label" translatable="yes">T̰̰̰hree tildes below
+</property>
+        <property name="valign">start</property>
+      </object>
+    </child>
+  </object>
+</interface>
diff --git a/testsuite/reftests/label-overdraw-vertical.ui b/testsuite/reftests/label-overdraw-vertical.ui
new file mode 100644 (file)
index 0000000..309a87e
--- /dev/null
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<interface>
+  <object class="GtkWindow">
+    <property name="decorated">0</property>
+    <property name="height-request">100</property>
+    <child>
+      <object class="GtkLabel">
+        <property name="label" translatable="yes">T̰̰̰hree tildes below</property>
+        <property name="valign">start</property>
+      </object>
+    </child>
+  </object>
+</interface>
index 791cbe5ca0c110397096b28b04a3885b02777b06..301f8bd0c57ee32b022f0d2fad445b48877c7509 100644 (file)
@@ -392,6 +392,10 @@ testdata = [
   'label-huge-max-width-chars.ui',
   'label-max-width-chars-and-halign-and-infinite-width.ui',
   'label-max-width-chars-and-halign-and-infinite-width.ref.ui',
+  'label-overdraw-horizontal.ref.ui',
+  'label-overdraw-horizontal.ui',
+  'label-overdraw-vertical.ref.ui',
+  'label-overdraw-vertical.ui',
   'label-shadows.css',
   'label-shadows.ref.ui',
   'label-shadows.ui',