summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorMatthias Clasen <mclasen@redhat.com>2019-07-22 16:20:37 +0000
committerMatthias Clasen <mclasen@redhat.com>2019-07-22 16:20:37 +0000
commitf401cb1789400384aca0e3679e47213148c9403b (patch)
treeb2c949dda55a6199efdd35d0815acf384af8b065 /tests
parent5319f448a052ab328deefea2a6a697fab2903ddf (diff)
parent2036d2b6be2254f97f23944b04a58d224bd1409d (diff)
downloadpango-f401cb1789400384aca0e3679e47213148c9403b.tar.gz
Merge branch 'better-hyphens' into 'master'
Better hyphens See merge request GNOME/pango!89
Diffstat (limited to 'tests')
-rw-r--r--tests/breaks/one.expected10
-rw-r--r--tests/breaks/three.expected10
-rw-r--r--tests/breaks/two.expected10
-rw-r--r--tests/layouts/valid-4.expected24
-rw-r--r--tests/test-break.c22
-rw-r--r--tests/testiter.c11
6 files changed, 52 insertions, 35 deletions
diff --git a/tests/breaks/one.expected b/tests/breaks/one.expected
index d474c6e4..66c6bd48 100644
--- a/tests/breaks/one.expected
+++ b/tests/breaks/one.expected
@@ -1,5 +1,5 @@
-Text: a b c / d e f [ ] g h i [0xad] j k l . [ ] B l a [0x0a]
-Breaks: c c c c lc c c c lc c c c lc c c c c lc c c c Lc
-Whitespace: x x w w
-Words: bs be bs be bs be b bs be b
-Sentences: bs e bs e b
+Text: a b c / d e f [ ] g h i [0xad] j k l . [ ] B l a [0x0a]
+Breaks: c c c c lc c c c lc c c c lc c c c c lc c c c c
+Whitespace: x x w w
+Words: bs be bs be bs be b bs be b
+Sentences: bs e bs e b
diff --git a/tests/breaks/three.expected b/tests/breaks/three.expected
index b7d8bd90..0e60f876 100644
--- a/tests/breaks/three.expected
+++ b/tests/breaks/three.expected
@@ -1,5 +1,5 @@
-Text: o n e [ ] t w o [0x2028] r e d [ ] b l u e[0x200d] g r e e n [0x0a]
-Breaks: c c c c lc c c c Lc c c c lc c c c c c c c c c Lc
-Whitespace: x w x w w
-Words: bs be bs be bs be bs be b
-Sentences: bs e bs e b
+Text: o n e [ ] t w o [0x2028] r e d [ ] b l u e[0x200d] g r e e n [0x0a]
+Breaks: c c c c lc c c c Lc c c c lc c c c c c c c c c c
+Whitespace: x w x w w
+Words: bs be bs be bs be bs be b
+Sentences: bs e bs e b
diff --git a/tests/breaks/two.expected b/tests/breaks/two.expected
index cea1f884..7ff48c28 100644
--- a/tests/breaks/two.expected
+++ b/tests/breaks/two.expected
@@ -1,5 +1,5 @@
-Text: g o r i l · l e s [0x0a]
-Breaks: c c c c c c c c c c Lc
-Whitespace: w w
-Words: bs e s be b
-Sentences: bs e b
+Text: g o r i l · l e s [0x0a]
+Breaks: c c c c c c c c c c c
+Whitespace: w w
+Words: bs e s be b
+Sentences: bs e b
diff --git a/tests/layouts/valid-4.expected b/tests/layouts/valid-4.expected
index d0ffe0ed..09f143f3 100644
--- a/tests/layouts/valid-4.expected
+++ b/tests/layouts/valid-4.expected
@@ -23,16 +23,14 @@ i=6, index=152, paragraph-start=1, dir=ltr ''
--- runs
-i=1, index=0, chars=29, level=0, gravity=south, flags=0, font=OMITTED, script=latin, language=en-us, 'This paragraph should ac­tual'
-i=2, index=30, chars=1, level=0, gravity=south, flags=0, font=OMITTED, script=common, language=en-us, '­'
-i=3, index=32, no run, line end
-i=4, index=32, chars=31, level=0, gravity=south, flags=0, font=OMITTED, script=latin, language=en-us, 'ly have multiple lines, unlike '
-i=5, index=63, no run, line end
-i=6, index=63, chars=28, level=0, gravity=south, flags=0, font=OMITTED, script=latin, language=en-us, 'all the other wannabe äöü pa'
-i=7, index=94, chars=1, level=0, gravity=south, flags=0, font=OMITTED, script=common, language=en-us, '­'
-i=8, index=96, no run, line end
-i=9, index=96, chars=27, level=0, gravity=south, flags=0, font=OMITTED, script=latin, language=en-us, 'ra­graph tests in this ugh '
-i=10, index=124, no run, line end
-i=11, index=124, chars=27, level=0, gravity=south, flags=0, font=OMITTED, script=latin, language=en-us, 'test-case. Grow some lines!'
-i=12, index=151, no run, line end
-i=13, index=152, no run, line end
+i=1, index=0, chars=30, level=0, gravity=south, flags=4, font=OMITTED, script=latin, language=en-us, 'This paragraph should ac­tual­'
+i=2, index=32, no run, line end
+i=3, index=32, chars=31, level=0, gravity=south, flags=0, font=OMITTED, script=latin, language=en-us, 'ly have multiple lines, unlike '
+i=4, index=63, no run, line end
+i=5, index=63, chars=29, level=0, gravity=south, flags=4, font=OMITTED, script=latin, language=en-us, 'all the other wannabe äöü pa­'
+i=6, index=96, no run, line end
+i=7, index=96, chars=27, level=0, gravity=south, flags=0, font=OMITTED, script=latin, language=en-us, 'ra­graph tests in this ugh '
+i=8, index=124, no run, line end
+i=9, index=124, chars=27, level=0, gravity=south, flags=0, font=OMITTED, script=latin, language=en-us, 'test-case. Grow some lines!'
+i=10, index=151, no run, line end
+i=11, index=152, no run, line end
diff --git a/tests/test-break.c b/tests/test-break.c
index 00bc7be0..8549b678 100644
--- a/tests/test-break.c
+++ b/tests/test-break.c
@@ -41,13 +41,15 @@ test_file (const gchar *filename, GString *string)
gsize length;
GError *error = NULL;
PangoLogAttr *attrs;
- PangoLanguage *lang;
int len;
char *p;
int i;
GString *s1, *s2, *s3, *s4;
int m;
char *test;
+ char *text;
+ PangoAttrList *attributes;
+ PangoLayout *layout;
if (!g_file_get_contents (filename, &contents, &length, &error))
{
@@ -66,9 +68,17 @@ test_file (const gchar *filename, GString *string)
len = g_utf8_strlen (test, -1) + 1;
attrs = g_new (PangoLogAttr, len);
- lang = pango_language_from_string ("en");
+ if (!pango_parse_markup (test, -1, 0, &attributes, &text, NULL, &error))
+ {
+ fprintf (stderr, "%s\n", error->message);
+ g_error_free (error);
+ return;
+ }
- pango_get_log_attrs (test, length, -1, lang, attrs, len);
+ layout = pango_layout_new (context);
+ pango_layout_set_text (layout, text, length);
+ pango_layout_set_attributes (layout, attributes);
+ pango_layout_get_log_attrs (layout, &attrs, &len);
s1 = g_string_new ("Breaks: ");
s2 = g_string_new ("Whitespace: ");
@@ -85,7 +95,7 @@ test_file (const gchar *filename, GString *string)
g_string_append_printf (s4, "%*s", (int)(m - s4->len), "");
g_string_append_printf (string, "%*s", (int)(m - strlen ("Text: ")), "");
- for (i = 0, p = test; i < len; i++, p = g_utf8_next_char (p))
+ for (i = 0, p = text; i < len; i++, p = g_utf8_next_char (p))
{
PangoLogAttr log = attrs[i];
int b = 0;
@@ -208,8 +218,10 @@ test_file (const gchar *filename, GString *string)
g_string_free (s3, TRUE);
g_string_free (s4, TRUE);
+ g_object_unref (layout);
g_free (attrs);
g_free (contents);
+ pango_attr_list_unref (attributes);
}
static gchar *
@@ -270,7 +282,7 @@ main (int argc, char *argv[])
g_test_init (&argc, &argv, NULL);
- context = pango_context_new ();
+ context = pango_font_map_create_context (pango_cairo_font_map_get_default ());
/* allow to easily generate expected output for new test cases */
if (argc > 1)
diff --git a/tests/testiter.c b/tests/testiter.c
index de3b462f..653c4bec 100644
--- a/tests/testiter.c
+++ b/tests/testiter.c
@@ -115,12 +115,19 @@ iter_char_test (PangoLayout *layout)
if (run)
{
+ PangoFontDescription *desc;
+ char *str;
+
/* Get needed data for the GlyphString */
pango_layout_iter_get_run_extents(iter, NULL, &run_extents);
offset = run->item->offset;
rtl = run->item->analysis.level%2;
- verbose (" (current run: offset=%d,x=%d,len=%d,rtl=%d)\n",
- offset, run_extents.x, run->item->length, rtl);
+ desc = pango_font_describe (run->item->analysis.font);
+ str = pango_font_description_to_string (desc);
+ verbose (" (current run: font=%s,offset=%d,x=%d,len=%d,rtl=%d)\n",
+ str, offset, run_extents.x, run->item->length, rtl);
+ g_free (str);
+ pango_font_description_free (desc);
/* Calculate expected x result using index_to_x */
pango_glyph_string_index_to_x (run->glyphs,