diff --git a/testsuite/reftests/label-nowrap-ellipsize-min-size.ref.ui b/testsuite/reftests/label-nowrap-ellipsize-min-size.ref.ui
new file mode 100644
index 0000000000..54fe364dd3
--- /dev/null
+++ b/testsuite/reftests/label-nowrap-ellipsize-min-size.ref.ui
@@ -0,0 +1,13 @@
+
+
+
+
diff --git a/testsuite/reftests/label-nowrap-ellipsize-min-size.ui b/testsuite/reftests/label-nowrap-ellipsize-min-size.ui
new file mode 100644
index 0000000000..a13fc85d1e
--- /dev/null
+++ b/testsuite/reftests/label-nowrap-ellipsize-min-size.ui
@@ -0,0 +1,17 @@
+
+
+
+ 10
+ 1
+ 0
+
+
+ Hello World multi line
+ 2
+ word
+ end
+ 2
+
+
+
+
diff --git a/testsuite/reftests/label-nowrap-ellipsize-nat-size.ref.ui b/testsuite/reftests/label-nowrap-ellipsize-nat-size.ref.ui
new file mode 100644
index 0000000000..762b6f5d25
--- /dev/null
+++ b/testsuite/reftests/label-nowrap-ellipsize-nat-size.ref.ui
@@ -0,0 +1,12 @@
+
+
+
+ 10
+ 0
+
+
+ …
+
+
+
+
diff --git a/testsuite/reftests/label-nowrap-ellipsize-nat-size.ui b/testsuite/reftests/label-nowrap-ellipsize-nat-size.ui
new file mode 100644
index 0000000000..efb7fb13cf
--- /dev/null
+++ b/testsuite/reftests/label-nowrap-ellipsize-nat-size.ui
@@ -0,0 +1,16 @@
+
+
+
+ 10
+ 0
+
+
+ Hello World multi line
+ 2
+ word
+ end
+ 2
+
+
+
+
diff --git a/testsuite/reftests/label-nowrap-ellipsize-oversize.ref.ui b/testsuite/reftests/label-nowrap-ellipsize-oversize.ref.ui
new file mode 100644
index 0000000000..ec50a313e8
--- /dev/null
+++ b/testsuite/reftests/label-nowrap-ellipsize-oversize.ref.ui
@@ -0,0 +1,13 @@
+
+
+
+ 10
+ 200
+ 0
+
+
+ …
+
+
+
+
diff --git a/testsuite/reftests/label-nowrap-ellipsize-oversize.ui b/testsuite/reftests/label-nowrap-ellipsize-oversize.ui
new file mode 100644
index 0000000000..06edf1bda3
--- /dev/null
+++ b/testsuite/reftests/label-nowrap-ellipsize-oversize.ui
@@ -0,0 +1,17 @@
+
+
+
+ 10
+ 200
+ 0
+
+
+ Hello World multi line
+ 2
+ word
+ end
+ 2
+
+
+
+
diff --git a/testsuite/reftests/label-wrap-ellipsize-min-size.ref.ui b/testsuite/reftests/label-wrap-ellipsize-min-size.ref.ui
new file mode 100644
index 0000000000..876e88a372
--- /dev/null
+++ b/testsuite/reftests/label-wrap-ellipsize-min-size.ref.ui
@@ -0,0 +1,14 @@
+
+
+
+ 10
+ 1
+ 0
+
+
+ Hello
+W…
+
+
+
+
diff --git a/testsuite/reftests/label-wrap-ellipsize-min-size.ui b/testsuite/reftests/label-wrap-ellipsize-min-size.ui
new file mode 100644
index 0000000000..18ad5950ee
--- /dev/null
+++ b/testsuite/reftests/label-wrap-ellipsize-min-size.ui
@@ -0,0 +1,23 @@
+
+
+
+ 10
+
+ 1
+ 0
+
+
+ Hello World multi line
+ 2
+ word
+ 1
+ end
+ 2
+
+
+
+
diff --git a/testsuite/reftests/label-wrap-ellipsize-nat-size.ref.ui b/testsuite/reftests/label-wrap-ellipsize-nat-size.ref.ui
new file mode 100644
index 0000000000..876e88a372
--- /dev/null
+++ b/testsuite/reftests/label-wrap-ellipsize-nat-size.ref.ui
@@ -0,0 +1,14 @@
+
+
+
+ 10
+ 1
+ 0
+
+
+ Hello
+W…
+
+
+
+
diff --git a/testsuite/reftests/label-wrap-ellipsize-nat-size.ui b/testsuite/reftests/label-wrap-ellipsize-nat-size.ui
new file mode 100644
index 0000000000..6c598a33b6
--- /dev/null
+++ b/testsuite/reftests/label-wrap-ellipsize-nat-size.ui
@@ -0,0 +1,17 @@
+
+
+
+ 10
+ 0
+
+
+ Hello World multi line
+ 2
+ word
+ 1
+ end
+ 2
+
+
+
+
diff --git a/testsuite/reftests/label-wrap-ellipsize-oversize.ref.ui b/testsuite/reftests/label-wrap-ellipsize-oversize.ref.ui
new file mode 100644
index 0000000000..10d67afefe
--- /dev/null
+++ b/testsuite/reftests/label-wrap-ellipsize-oversize.ref.ui
@@ -0,0 +1,14 @@
+
+
+
+ 10
+ 200
+ 0
+
+
+ Hello
+W…
+
+
+
+
diff --git a/testsuite/reftests/label-wrap-ellipsize-oversize.ui b/testsuite/reftests/label-wrap-ellipsize-oversize.ui
new file mode 100644
index 0000000000..da8c16f3af
--- /dev/null
+++ b/testsuite/reftests/label-wrap-ellipsize-oversize.ui
@@ -0,0 +1,18 @@
+
+
+
+ 10
+ 200
+ 0
+
+
+ Hello World multi line
+ 2
+ word
+ 1
+ end
+ 2
+
+
+
+
diff --git a/testsuite/reftests/label-wrap-noellipsize-min-size.ref.ui b/testsuite/reftests/label-wrap-noellipsize-min-size.ref.ui
new file mode 100644
index 0000000000..9b4abc31ae
--- /dev/null
+++ b/testsuite/reftests/label-wrap-noellipsize-min-size.ref.ui
@@ -0,0 +1,16 @@
+
+
+
+ 10
+ 1
+ 0
+
+
+ Hello
+World
+multi
+line
+
+
+
+
diff --git a/testsuite/reftests/label-wrap-noellipsize-min-size.ui b/testsuite/reftests/label-wrap-noellipsize-min-size.ui
new file mode 100644
index 0000000000..8a2f38351d
--- /dev/null
+++ b/testsuite/reftests/label-wrap-noellipsize-min-size.ui
@@ -0,0 +1,17 @@
+
+
+
+ 10
+ 1
+ 0
+
+
+ Hello World multi line
+ 2
+ word
+ 1
+ 2
+
+
+
+
diff --git a/testsuite/reftests/label-wrap-noellipsize-nat-size.ref.ui b/testsuite/reftests/label-wrap-noellipsize-nat-size.ref.ui
new file mode 100644
index 0000000000..fb031c914f
--- /dev/null
+++ b/testsuite/reftests/label-wrap-noellipsize-nat-size.ref.ui
@@ -0,0 +1,15 @@
+
+
+
+ 10
+ 0
+
+
+ Hello
+World
+multi
+line
+
+
+
+
diff --git a/testsuite/reftests/label-wrap-noellipsize-nat-size.ui b/testsuite/reftests/label-wrap-noellipsize-nat-size.ui
new file mode 100644
index 0000000000..97457a4c5f
--- /dev/null
+++ b/testsuite/reftests/label-wrap-noellipsize-nat-size.ui
@@ -0,0 +1,16 @@
+
+
+
+ 10
+ 0
+
+
+ Hello World multi line
+ 2
+ word
+ 1
+ 2
+
+
+
+
diff --git a/testsuite/reftests/label-wrap-noellipsize-oversize.ref.ui b/testsuite/reftests/label-wrap-noellipsize-oversize.ref.ui
new file mode 100644
index 0000000000..2bc63be36a
--- /dev/null
+++ b/testsuite/reftests/label-wrap-noellipsize-oversize.ref.ui
@@ -0,0 +1,16 @@
+
+
+
+ 10
+ 200
+ 0
+
+
+ Hello
+World
+multi
+line
+
+
+
+
diff --git a/testsuite/reftests/label-wrap-noellipsize-oversize.ui b/testsuite/reftests/label-wrap-noellipsize-oversize.ui
new file mode 100644
index 0000000000..310e3c7f5f
--- /dev/null
+++ b/testsuite/reftests/label-wrap-noellipsize-oversize.ui
@@ -0,0 +1,17 @@
+
+
+
+ 10
+ 200
+ 0
+
+
+ Hello World multi line
+ 2
+ word
+ 1
+ 2
+
+
+
+
diff --git a/testsuite/reftests/meson.build b/testsuite/reftests/meson.build
index 0b6d0fa84a..487084cb88 100644
--- a/testsuite/reftests/meson.build
+++ b/testsuite/reftests/meson.build
@@ -416,6 +416,24 @@ testdata = [
'label-wrap-word-char-natural-size.ui',
'label-wrapped-huge-max-width-chars.ref.ui',
'label-wrapped-huge-max-width-chars.ui',
+ 'label-wrap-ellipsize-min-size.ref.ui',
+ 'label-wrap-ellipsize-min-size.ui',
+ 'label-wrap-ellipsize-nat-size.ref.ui',
+ 'label-wrap-ellipsize-nat-size.ui',
+ 'label-wrap-ellipsize-oversize.ref.ui',
+ 'label-wrap-ellipsize-oversize.ui',
+ 'label-nowrap-ellipsize-min-size.ref.ui',
+ 'label-nowrap-ellipsize-min-size.ui',
+ 'label-nowrap-ellipsize-nat-size.ref.ui',
+ 'label-nowrap-ellipsize-nat-size.ui',
+ 'label-nowrap-ellipsize-oversize.ref.ui',
+ 'label-nowrap-ellipsize-oversize.ui',
+ 'label-wrap-noellipsize-min-size.ref.ui',
+ 'label-wrap-noellipsize-min-size.ui',
+ 'label-wrap-noellipsize-nat-size.ref.ui',
+ 'label-wrap-noellipsize-nat-size.ui',
+ 'label-wrap-noellipsize-oversize.ref.ui',
+ 'label-wrap-noellipsize-oversize.ui',
# this seems to make assumptions on text positioning
# that are not valid with subpixel positioning
#'label-wrap-justify.ref.ui',