Go to:
Gentoo Home
Documentation
Forums
Lists
Bugs
Planet
Store
Wiki
Get Gentoo!
Gentoo's Bugzilla – Attachment 890153 Details for
Bug 927192
media-libs/harfbuzz-8.3.1[experimental] - ../.../meson.build: ERROR: File test-hb-subset-parsing.c does not exist.
Home
|
New
–
[Ex]
|
Browse
|
Search
|
Privacy Policy
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
media-libs/harfbuzz-8.3.1
test-hb-subset-parsing.c.diff (text/plain), 4.62 KB, created by
Vladislav Mikhailikov
on 2024-04-10 16:02:48 UTC
(
hide
)
Description:
media-libs/harfbuzz-8.3.1
Filename:
MIME Type:
Creator:
Vladislav Mikhailikov
Created:
2024-04-10 16:02:48 UTC
Size:
4.62 KB
patch
obsolete
>diff -Naur a/util/test-hb-subset-parsing.c b/util/test-hb-subset-parsing.c >--- a/util/test-hb-subset-parsing.c 1970-01-01 03:00:00.000000000 +0300 >+++ b/util/test-hb-subset-parsing.c 2024-04-10 18:52:35.759900001 +0300 >@@ -0,0 +1,111 @@ >+#include <assert.h> >+#include <stdio.h> >+#include "glib.h" >+#include "hb-subset.h" >+#include "helper-subset.hh" >+ >+static >+hb_face_t* open_font(const char* path) >+{ >+ hb_blob_t *blob = hb_blob_create_from_file_or_fail (path); >+ g_assert(blob); >+ hb_face_t* face = hb_face_create(blob, 0); >+ hb_blob_destroy(blob); >+ >+ return face; >+} >+ >+static >+gboolean check_parsing(hb_face_t* face, const char* spec, hb_tag_t axis, float exp_min, float exp_def, float exp_max) >+{ >+ printf(">> testing spec: %s\n", spec); >+ hb_subset_input_t* input = hb_subset_input_create_or_fail(); >+ g_assert(input); >+ >+ { >+ GError* error; >+ char *spec_copy = g_strdup (spec); >+ gboolean res = parse_instancing_spec(spec_copy, face, input, &error); >+ g_free(spec_copy); >+ if (!res) { >+ hb_subset_input_destroy(input); >+ return res; >+ } >+ } >+ >+ float act_min = 0.0, act_def = 0.0, act_max = 0.0; >+ hb_bool_t res = hb_subset_input_get_axis_range(input, axis, &act_min, &act_max, &act_def); >+ if (!res) { >+ hb_subset_input_destroy(input); >+ return false; >+ >+ } >+ >+ g_assert_cmpuint(exp_min, ==, act_min); >+ g_assert_cmpuint(exp_def, ==, act_def); >+ g_assert_cmpuint(exp_max, ==, act_max); >+ >+ hb_subset_input_destroy(input); >+ return true; >+} >+ >+static hb_tag_t wght = HB_TAG('w', 'g', 'h', 't'); >+static hb_tag_t xxxx = HB_TAG('x', 'x', 'x', 'x'); >+ >+static void >+test_parse_instancing_spec (void) >+{ >+ hb_face_t* face = open_font("../test/api/fonts/AdobeVFPrototype-Subset.otf"); >+ hb_face_t* roboto = open_font("../test/api/fonts/Roboto-Variable.abc.ttf"); >+ >+ g_assert(check_parsing(face, "wght=300", wght, 300, 300, 300)); >+ g_assert(check_parsing(face, "wght=100:200:300", wght, 100, 200, 300)); >+ g_assert(check_parsing(face, "wght=:500:", wght, 0, 500, 1000)); >+ g_assert(check_parsing(face, "wght=::700", wght, 0, 700, 700)); >+ g_assert(check_parsing(face, "wght=200::", wght, 200, 1000, 1000)); >+ g_assert(check_parsing(face, "wght=200:300:", wght, 200, 300, 1000)); >+ g_assert(check_parsing(face, "wght=:300:500", wght, 0, 300, 500)); >+ g_assert(check_parsing(face, "wght=300::700", wght, 300, 700, 700)); >+ g_assert(check_parsing(face, "wght=300:700", wght, 300, 700, 700)); >+ g_assert(check_parsing(face, "wght=:700", wght, 0, 700, 700)); >+ g_assert(check_parsing(face, "wght=200:", wght, 200, 1000, 1000)); >+ >+ g_assert(check_parsing(face, "wght=200: xxxx=50", wght, 200, 1000, 1000)); >+ g_assert(check_parsing(face, "wght=200: xxxx=50", xxxx, 50, 50, 50)); >+ g_assert(check_parsing(face, "wght=200:,xxxx=50", wght, 200, 1000, 1000)); >+ g_assert(check_parsing(face, "wght=200:,xxxx=50", xxxx, 50, 50, 50)); >+ >+ g_assert(check_parsing(face, "wght=200,*=drop", wght, 1000, 1000, 1000)); >+ g_assert(check_parsing(face, "wght=200,*=drop", xxxx, 0, 0, 0)); >+ g_assert(check_parsing(face, "*=drop,wght=200", wght, 200, 200, 200)); >+ g_assert(check_parsing(face, "*=drop,wght=200", xxxx, 0, 0, 0)); >+ g_assert(check_parsing(face, "*=drop,wght=200,xxxx=50", wght, 200, 200, 200)); >+ g_assert(check_parsing(face, "*=drop,wght=200,xxxx=50", xxxx, 50, 50, 50)); >+ g_assert(check_parsing(face, "xxxx=50,*=drop,wght=200", wght, 200, 200, 200)); >+ g_assert(check_parsing(face, "xxxx=50,*=drop,wght=200", xxxx, 0, 0, 0)); >+ g_assert(check_parsing(face, "*=drop", wght, 1000, 1000, 1000)); >+ g_assert(check_parsing(face, "*=drop", xxxx, 0, 0, 0)); >+ >+ g_assert(check_parsing(roboto, "wght=300", wght, 300, 300, 300)); >+ g_assert(check_parsing(roboto, "wght=100:200:300", wght, 100, 200, 300)); >+ g_assert(check_parsing(roboto, "wght=:500:", wght, 100, 500, 900)); >+ g_assert(check_parsing(roboto, "wght=::850", wght, 100, 400, 850)); >+ g_assert(check_parsing(roboto, "wght=200::", wght, 200, 400, 900)); >+ g_assert(check_parsing(roboto, "wght=200:300:", wght, 200, 300, 900)); >+ g_assert(check_parsing(roboto, "wght=:300:500", wght, 100, 300, 500)); >+ g_assert(check_parsing(roboto, "wght=300::700", wght, 300, 400, 700)); >+ g_assert(check_parsing(roboto, "wght=300:700", wght, 300, 400, 700)); >+ g_assert(check_parsing(roboto, "wght=:700", wght, 100, 400, 700)); >+ g_assert(check_parsing(roboto, "wght=200:", wght, 200, 400, 900)); >+ >+ hb_face_destroy(face); >+} >+ >+ >+int >+main (int argc, char **argv) >+{ >+ test_parse_instancing_spec(); >+ >+ return 0; >+}
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 927192
:
887826
|
887827
|
887828
|
887829
|
887830
|
887831
|
887832
|
887833
| 890153