test/shape

Branch


Log

Author Commit Date CI Message
Harry Dalton 780b9866 2025-10-15T10:28:41 [shape] Test fallback to `kern` table under different shapers More specifically, this asserts that the `kern` table is avoided for certain shapers, and that we avoid double-spacing in the presence of `dist` for the same.
Khaled Hosny 189358e3 2025-10-15T05:06:26 [test] Add test for harfrust#278 (#5610) Add test case for https://github.com/harfbuzz/harfrust/pull/278
David Corbett e189b34e 2025-09-10T11:19:14 [Unicode 17] Update the emoji table & cluster test
Behdad Esfahbod 2c22a65f 2025-08-08T15:14:16 [test] Add test for would_apply with multiple subtables From HarfRust issue: https://github.com/harfbuzz/harfrust/issues/118
Behdad Esfahbod 3416fd28 2025-07-26T12:56:16 [tests/vertical] Add test for previous commit
Behdad Esfahbod 4f8193ce 2025-07-26T12:56:16 [tests/vertical] Add test for previous commit
Khaled Hosny 16fe5422 2025-07-23T16:03:18 [kbts] Add some tests
Behdad Esfahbod d47a319b 2025-07-15T12:08:00 [rust] Roll deps forward Adjust tests. See: https://github.com/harfbuzz/harfbuzz/issues/5388
Behdad Esfahbod 7278f8a2 2025-06-14T11:02:37 [test/shape] Clean up meson Fixes https://github.com/harfbuzz/harfbuzz/issues/5366
Behdad Esfahbod cc884606 2025-06-06T21:39:03 [test/shape] --safe-to-insert-tatweel At some point we should switch to --show-flags. For now, tests all pass regardless of this switch.
Behdad Esfahbod 7908e86e 2025-06-06T20:19:06 [util/test-shape] Only output one line per test If a shape call was failing, perhaps because of --verify failing, hb-shape was producing multiple lines possibly, making the test runner get out of sync and fail all following tests. https://github.com/harfbuzz/harfruzz/issues/60
Behdad Esfahbod 60405605 2025-05-09T23:17:35 [test/shape] Move LucidaGrande test to macos.tests
Behdad Esfahbod 19a5d1aa 2025-05-07T16:57:19 [test/shape] Only do unsafe-to-concat check for `ot` shaper For now, to get harfRuzz testing going better.
Behdad Esfahbod 2f7fbeee 2025-05-07T13:42:56 [test/shape] Allow specifying shaper / face-loader as env-vars
Behdad Esfahbod 21a67df4 2025-05-06T15:41:12 [run-tests.py] Clean up file descriptors
Behdad Esfahbod e31721b5 2025-04-06T21:40:43 [test/shape] Write cmdline as test description
Behdad Esfahbod c60067c6 2025-04-06T15:25:58 [test/subset] See if this fixes CI
Behdad Esfahbod 8456c33a 2025-04-06T14:33:44 [test/shape] Respect @face-loaders directive
Behdad Esfahbod 1f1cbb64 2025-04-06T14:30:07 Merge pull request #5260 from harfbuzz/tap Use TAP protocol for tests
Behdad Esfahbod 03f42301 2025-04-06T13:31:17 [mac] Add tests for --face-loader https://github.com/harfbuzz/harfbuzz/issues/5142
Behdad Esfahbod 5a468728 2025-04-06T13:05:43 Add test for https://github.com/harfbuzz/harfbuzz/issues/5232
Behdad Esfahbod 5efdb884 2025-04-06T03:21:15 [run-tests] Fix remaining bot fails, fingers crossed
Behdad Esfahbod 8132a660 2025-04-06T03:12:38 [shape/run-tests] Don't return non-zero TAP protocol.
Behdad Esfahbod a530672f 2025-04-06T02:20:41 [meson.build] Don't use str.replace() method Too recent.
Behdad Esfahbod b01cea95 2025-04-06T01:48:35 [meson] Cosmetic
Behdad Esfahbod ee50fad6 2025-04-06T01:08:28 [run-tests] black
Behdad Esfahbod 69fd9490 2025-04-06T00:33:44 [test/shape] Run using TAP protocol Run all tests for a suite in one process. Saves runtime from 3s to 2s.
Behdad Esfahbod 2834900d 2025-04-06T00:15:12 [test/shape] Run each test suite in one process
Behdad Esfahbod c523f9ac 2025-04-05T23:41:51 [test/shape] Use TAP Checkpoint.
Behdad Esfahbod 91fd40ac 2025-04-01T03:57:47 [shape] Skip hidden / ignorables during fallback mark positioning Fixes https://github.com/harfbuzz/harfbuzz/issues/5232
Behdad Esfahbod 4954edb2 2025-03-28T19:19:57 [test/vertical] Add more tests
Behdad Esfahbod 67314b20 2025-03-28T16:41:01 [test/vertical] Enable some on fontations
Behdad Esfahbod c260550a 2025-03-28T16:34:12 [test/shape] Improve run-tests output on failure
Behdad Esfahbod 18ced8db 2025-03-28T16:31:46 [test/vertical] Add more tests
Behdad Esfahbod cb44134c 2025-03-28T15:56:13 [test/vertical] Test more font-funcs
Behdad Esfahbod 7ba03682 2025-03-27T17:12:08 [test] Enable aat-trak on all font funcs now
Behdad Esfahbod e16a9857 2025-03-25T15:14:30 [test/shape/aots] Add directive to run with ot shaper only
Behdad Esfahbod 851d3e33 2025-03-25T15:06:24 [aots] Fix compile error Also requires https://github.com/adobe-type-tools/aots/pull/5 to be merged. Or if that repo is inactive, we can switch to my fork.
Behdad Esfahbod eec91084 2025-03-25T13:56:12 [test/shape] Adjust uniscribe test
Khaled Hosny 61401394 2025-03-25T17:11:51 [test/shape] Update comment
Khaled Hosny 190ad35f 2025-03-25T16:34:19 [test/shape] Don’t skip test if `hb-shape --list-*` fails This can happen with Wine when, e.g., `WINEPATH` is not set, and we would silently skip the tests because lists of supported shapers etc. are empty.
Khaled Hosny 6cf308c8 2025-03-25T10:34:43 [test/shape] Remove @font-funcs-=directwrite from directwrite test The directwrite font functions support variations now, so this is no longer needed.
Khaled Hosny 1402ecfe 2025-03-25T10:33:38 [test/shape] Use @shapers directive in uniscribe test
Behdad Esfahbod 46a30fe3 2025-03-24T18:23:34 [test/shape] Respect @shapers directive
Behdad Esfahbod 4cc66435 2025-03-23T12:06:54 Merge pull request #5188 from harfbuzz/text-rendering-tests-fontations Text rendering tests fontations
Behdad Esfahbod 74c82b3a 2025-03-23T11:52:45 Blacken
Behdad Esfahbod f0e260ad 2025-03-23T11:51:58 [text-rendering-tests] Run against ot,ft only See https://github.com/harfbuzz/harfbuzz/pull/5188
Behdad Esfahbod 55743b23 2025-03-22T19:56:00 [test/shape] Skip uniscribe/directwrite shapers under Wine
Behdad Esfahbod e0aee581 2025-03-22T13:07:10 [test] Respect MESON_EXE_WRAPPER in more test runners It's not working for me though. Meson doesn't seem to set WINEPATH during testing.
Behdad Esfahbod 8ae92d0d 2025-03-22T13:21:54 [text-rendering-tests] Run against all font-funcs One test is failing with fontations, and a few with directwrite.
Behdad Esfahbod 51a5618c 2025-03-22T13:20:16 [test] Update text-rendering-tests
Khaled Hosny 12e31ab7 2025-03-21T02:24:00 [test] Allow running test suite under wine Set exe_wrapper in the Windows cross files, which will cause unit tests to be run with wine. When we call the binary ourselves, e.g. in shape run-tests.py, we need to check for MESON_EXE_WRAPPER env var (which meson sets automatically if exe_wrapper is set) and use it.
Khaled Hosny 14c07dcf 2025-03-21T01:53:32 [test] Make context-matching test pass with coretext font functions Remove the CBDT/CBLC tables not needed for the test and a glyf/loca tables with blank glyphs to make Core Text load the font.
Khaled Hosny 686503e2 2025-03-19T16:37:56 [directwrite] Copy font variations when shaping
Behdad Esfahbod 0349359c 2025-03-18T14:59:26 [tests] Fix one test
Behdad Esfahbod 696b4a26 2025-03-17T20:24:28 [coretext] Blocklist one more shape test
Behdad Esfahbod ad9c4737 2025-03-17T19:39:57 [test/shape] Make output less verbose
Behdad Esfahbod 630bc9b4 2025-03-17T19:23:49 [coretext] Disable variation-selectors test :-(
Behdad Esfahbod 719dafda 2025-03-17T18:06:14 [test/shape] Allow comments in directives Also adjust tests for directwrite font-funcs.
Behdad Esfahbod 27bb37c5 2025-03-17T17:54:06 [test/shape] Fix reporting
Behdad Esfahbod 9a0802db 2025-03-17T17:36:20 [test/shape] Comments
Behdad Esfahbod ee34711d 2025-03-17T17:10:17 [test/shape] Allow directives to instruct what backends to test
Behdad Esfahbod 220a8b94 2025-03-17T16:52:24 [test/shape] Massage script some more
Behdad Esfahbod 7c248ccc 2025-03-17T16:00:10 [test/shape] Var rename
Behdad Esfahbod 3e137c8e 2025-03-17T14:54:09 [test/shape] Minor massage the runner
Behdad Esfahbod cf1772a4 2025-03-17T13:29:54 [test/shape] Compare results without glyph names if needed Enable fontations font-funcs, which mostly passes now.
Behdad Esfahbod a37fb2fb 2025-03-17T13:25:05 [test/shape] Rename a couple of variables
Behdad Esfahbod 24f9fd46 2025-03-17T13:23:29 [test/shape] Restart hb-shape --batch process if killed
Behdad Esfahbod 5b3bf25b 2025-03-17T00:46:49 [test/shape] Test all font-funcs backends if none specified Disable fontations as it doesn't implement glyph names currently.
Behdad Esfahbod f16196a0 2025-03-16T21:38:20 [test-shape] Assume ot shaper is default
Behdad Esfahbod 0d5795c0 2025-03-16T21:35:25 [test/shape] Report shaper, face-loader, font-funcs
Behdad Esfahbod aacc667e 2025-03-16T21:27:45 [test/shape/run-tests] Streamline testing other backends
Behdad Esfahbod d8a774c0 2025-03-10T01:04:35 [test] Add test for new grapheme cluster level
Behdad Esfahbod ff76244e 2025-03-09T17:23:18 [aat/morx] Delete deleted glyphs again But also check for default-ignorable bit this time.
Behdad Esfahbod c6972ac6 2025-03-07T15:29:48 [aat] Towards removing special deleting of 0xFFFF See https://github.com/harfbuzz/harfbuzz/discussions/5118 Remove the removal. Depend on the default_ignorable flag to hide them later. Test output adjusted.
Behdad Esfahbod 2a878b1b 2025-03-07T17:23:17 [font-funcs] Add two new API + hb_font_set_funcs_using() + hb_font_list_funcs() Part of https://github.com/harfbuzz/harfbuzz/issues/5117
Khaled Hosny a3566030 2025-03-07T14:07:13 [directwrite/test] Add test that actually works Apparently DirectWrite does not allow disabling calt in Arabic, so test liga in Latin and ss01 in Arabic.
Khaled Hosny 9abaf193 2025-03-07T02:53:43 [directwrite] Fix applying features to directwrite shaper The range_features was ending up with random data because hb_ms_make_feature_ranges() keeps pointers to data allocated in feature_records and range_records, but that data was getting freed before range_features was used. Change the variable scope to avoid freeing the data too early. Fixes https://github.com/harfbuzz/harfbuzz/issues/5113
Behdad Esfahbod be287eab 2025-02-09T04:18:31 [trak] Don't shift glyphs That's what CoreText does and fonts are designed for. Who are we to improve on...
Behdad Esfahbod 1150d4bf 2025-02-09T04:16:57 [trak] Remove support for disabling using pseudo-font-feature Fixes https://github.com/harfbuzz/harfbuzz/issues/5052
Behdad Esfahbod 1bf0a5bc 2025-02-09T02:43:09 [trak] Streamline a bit Also use float math.
Behdad Esfahbod b1677e76 2025-02-09T01:56:03 [trak] Handle "out-of-range" values better If requested size < min-size, use the value for min-size. If requested size > max-size, use the value for max-size. This is the only way that makes sense. Extrapolating as we were doing, is just wrong... This also seems to match what CoreText does. Adjacent to fixing https://github.com/harfbuzz/harfbuzz/issues/5054
Behdad Esfahbod f394206b 2025-02-06T19:48:56 [ot-shape] Only apply trak'ing if STAT table present
Behdad Esfahbod 9ef009f5 2025-01-24T16:37:12 [test] Fix test Broken by previous commit. https://github.com/harfbuzz/harfbuzz/issues/5020#issuecomment-2613597379
David Corbett 57569baa 2025-01-02T21:14:25 Don’t insert U+25CC before super/subscript digits
David Corbett edb3b208 2024-12-15T12:01:33 Make hb_test_tools.py work in Python 3.13
David Corbett f887096a 2024-12-15T10:53:09 [myanmar] Allow all tones (& visarga) in any order
Khaled Hosny 773fe850 2024-11-20T17:20:49 [layout] Blocklist the GDEF table of various Courier New versions These files have incorrectly give several base glyphs GDEF mark glyph class leading in zeroing there advance widths. Fixes https://github.com/harfbuzz/harfbuzz/issues/4936
Behdad Esfahbod 2dc63341 2024-10-13T20:03:16 [tests] Remove invalid tests from collections.tests Previously we silently returned the empty face if face_index was out of range. With util/ now using the new API hb_font_face_create_from_file_or_fail(), that returns a nullptr face now. So, adjust tests.
David Corbett b6196986 2024-10-03T15:56:04 [USE] Update the data files This uses the data files from <https://github.com/microsoft/font-tools/tree/e00698c07a0444647db84a7f8bf03d1081bd53b3/USE>.
Behdad Esfahbod 867366cc 2024-09-24T09:17:12 [test] Add GeezaPro tests for MacOS 15.0
Behdad Esfahbod 7aace3d3 2024-09-23T07:47:24 Ignore CGJ and Mongolian Variation Selectors during GPOS Fixes https://github.com/harfbuzz/harfbuzz/issues/4869
Behdad Esfahbod 5e5cd10e 2024-09-22T12:36:51 Don't make variation-selectors default-ignorable if not-found set https://github.com/harfbuzz/harfbuzz/pull/4863#issuecomment-2366908261
Behdad Esfahbod b94a39d7 2024-09-22T08:23:34 Follow up to variation-selector-not-found glyph Addresses https://github.com/harfbuzz/harfbuzz/pull/4529#discussion_r1769638033 I'm not sure if this is an improvement. By leaving the var-selector as default-ignorable, ligatures can form around it, and the resulting cluster won't make it clear *which* base+var-selector could not be resolved... That doesn't quite help font fallback the way we want. Putting up for review.
Behdad Esfahbod 287046f7 2023-12-15T10:24:03 [buffer] Hook up not-found-variation-selector-glyph Fixes https://github.com/harfbuzz/harfbuzz/issues/4398
David Corbett 554658e3 2024-09-14T11:08:37 [Unicode 16] Update the emoji table & cluster test
Behdad Esfahbod 98353ece 2024-09-11T11:35:15 [test] Run shape tests with C locale as well https://github.com/harfbuzz/harfbuzz/pull/4857
Behdad Esfahbod 788b469a 2024-07-25T14:50:01 [ChainContext] Fix fast-path deviation from slow path See comments. The input skippy was hitting the U+200D and NOT seeing it skippable, whereas the context skippy would had. Fixes https://github.com/harfbuzz/harfbuzz/issues/4813
Khaled Hosny a38f853e 2024-06-27T15:35:01 Drop unused Makefile.sources files
Khaled Hosny cf1fdf16 2024-06-27T06:54:02 Drop autotools build Fixes https://github.com/harfbuzz/harfbuzz/issues/4720