test


Log

Author Commit Date CI Message
Qunxin Liu 85deddb1 2021-10-27T14:36:02 [subset] fuzzer fix: https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=40406
Behdad Esfahbod 42626369 2021-10-23T13:18:22 Merge pull request #3248 from googlefonts/connected_components [repacker] Keep connected subgraphs in the same space.
Qunxin Liu 8c583db9 2021-10-02T20:32:30 [subset] COLRv1: update subset() method for new strutc ClipList and VarIdxMap Also fix issues in struct PaintTransform definition
David Corbett 8eaee2f8 2021-10-07T20:10:31 [USE] Only skip default ignorables within CCSes
Garret Rieger 79937d24 2021-10-05T12:53:21 [repacker] Add repacker test that requires space splitting.
Khaled Hosny bb57df7a 2021-10-05T15:40:30 [test] Add test for https://github.com/harfbuzz/harfbuzz/issues/2757#issuecomment-933531978
Khaled Hosny 16245503 2021-10-05T15:35:17 [test] Add test for https://github.com/harfbuzz/harfbuzz/issues/3244
Qunxin Liu 794b00db 2021-09-27T17:21:16 [subset] fuzzer fix: https://oss-fuzz.com/testcase-detail/6616166961905664
Garret Rieger d5beb96e 2021-09-09T10:40:08 [repacker] add repacker isolation test on real font.
Qunxin Liu ca7b9dae 2021-09-20T14:42:51 [subset] subset MATH table
Garret Rieger c2cc566c 2021-09-22T14:15:55 [subset] Fix subset_offset_array adding unused space to serializer. ArrayOf.serialize_append allocates space for the new item, but ArrayOf.pop() does not recover the allocated space. So in the case where the revert path was entered the extra space added by serialize_append gets left in the serialization buffer. This moves the snapshot to before ArrayOf.serialize_append is called so that revert cleans up the buffer extend.
Qunxin Liu 8c5c8174 2021-09-12T20:16:30 [subset] fix find_duplicate_features We should check each feature against all other features with the same tag for duplicates.
Garret Rieger 74f96d9d 2021-09-17T13:46:07 [repacker] fix heap use after free in repacker. Don't store a reference to the link in overflow records as the link object may be freed if the sorted graph vector is resized.
Garret Rieger d700646c 2021-09-16T11:23:09 [subset] In preperation for 3.0.0 release remove legacy subsetting api methods.
David Corbett a0101a31 2021-09-14T18:38:50 [Unicode 14] Add tests
Khaled Hosny 4d9b7de0 2021-09-11T00:43:43 [style] Prepare for release
Behdad Esfahbod 201cbe3c 2021-09-09T11:09:46 [style] Rename HB_STYLE_TAG_SLANT to HB_STYLE_TAG_SLANT_ANGLE
Qunxin Liu 37379f8f 2021-09-02T11:54:37 [subset] fox for (Chain)ContextFormat3: subset lookupRecord skip copying a lookupRecord if lookup referenced in the lookupRecord is not retained after subset
Khaled Hosny 9fddbb3e 2021-09-03T17:56:08 [test] Rename test and split into smaller subtests
Khaled Hosny c6bb719e 2021-09-03T16:14:02 [test] Add tests for Arabic decomposition Test that both NFC and NFD input produces identical results for fonts that used composed fonts internally (Amiri here) and fonts that decompose internally (Noto Nastaliq Urdu here) and that for the former composed forms are used. See https://github.com/harfbuzz/harfbuzz/issues/3179
Khaled Hosny a9dc4fbe 2021-09-03T16:20:06 [test] Make shape test names match file names No idea why test names are underscorified but it it just makes calling meson test testname harder than it should being not able to copy file name directly.
Garret Rieger 102666da 2021-08-27T10:31:37 [subset] add test for hb_subset_input_set (...).
Behdad Esfahbod 99356ea5 2021-08-25T17:19:06 Merge pull request #3150 from harfbuzz/item-context-tests [test] Add tests for item context
Behdad Esfahbod 955f86a0 2021-08-24T11:17:10 [test-set] Fix compiler warnings
Garret Rieger f2441a4b 2021-08-24T15:53:32 [subset] Remove retain all layout features flag. Instead use inverted sets to handle requesting all features. Modifies feature collection in subset plan to intersect the set of requested features against the features in the font. This prevents iterating a fully filled feature tag set.
Garret Rieger f84daccb 2021-08-24T14:20:26 [set] include null pool sets in the permutations tested by inverted_operations.
Garret Rieger fb07f8f8 2021-08-23T15:33:57 During subset input creation check for set alloc failures and fail if encountered.
Khaled Hosny 33bfe9ed 2021-08-16T17:00:57 [test] Add tests for item context Test pre-context and post-context in Arabic shaper, as well as interaction of pre-context with BOT flag.
Qunxin Liu 34e0b28f 2021-08-18T20:46:06 [subset] make glyph-names option match fonttools behavior Don't encode psNames that are contained in standard glyph names set
Behdad Esfahbod 829b0f33 2021-08-20T01:28:15 Merge pull request #3154 from harfbuzz/set-invert Resurrect hb_set_invert()
Garret Rieger 915550ab 2021-08-19T17:48:38 [set] remove inverted test TODO.
Garret Rieger c4ed5829 2021-08-19T17:47:41 [set] add test for inverted set operations. This test checks all possible set configurations against each operation type.
Garret Rieger 325fd6dd 2021-08-19T15:54:31 [set] add tests for inverted set equality.
Garret Rieger 287032af 2021-08-19T15:45:28 [set] update set test TODO list.
Garret Rieger 5c003d80 2021-08-19T15:41:12 [set] add tests for inverted previous iteration.
Garret Rieger 3f2cc582 2021-08-19T15:00:07 [set] add basic and iteration set inverion tests.
Garret Rieger dc31920b 2021-08-18T14:20:14 Don't serialize null offsets in CPAL. Fixes https://oss-fuzz.com/testcase-detail/5443213648330752
Garret Rieger cb05c363 2021-08-13T15:19:20 [subset] add some basic tests for the legacy subset methods.
Garret Rieger 44802c8e 2021-08-12T11:11:51 [subset] use layout-features=* for layout subsetting tests w/ synthetic test fonts.
Garret Rieger c0f3af91 2021-08-11T16:20:05 [subset] speed up add_gid_and_children and adjust op limit. Fix for fuzzer timeout: https://oss-fuzz.com/testcase-detail/5001604901240832. - Operation limit is per glyph, so 100,000 should still be far more than needed. - Switches from for(...) to while(...) loop for iteration. for(...) calls it.end() which in this case triggers a complete iteration. - Cache CompositeGlyph size in the iterator to avoid needing to recalculate it.
Behdad Esfahbod 23282c9c 2021-08-11T22:49:47 [util/hb-subset] Support ranges in --unicodes / --unicodes-file Fixes https://github.com/harfbuzz/harfbuzz/issues/3109
Behdad Esfahbod 58bfe407 2021-08-11T19:48:28 [util] Move hb-subset away from main-font-text
Behdad Esfahbod 3147e081 2021-08-11T19:33:00 Merge branch 'main' into post-parse
Khaled Hosny 43722cc9 2021-08-12T02:32:29 [test] Add some real reverse sub tests
Behdad Esfahbod e0d7060f 2021-08-11T18:43:21 [test] Rename shaping/ to shape/
Khaled Hosny f1226988 2021-08-12T01:47:35 [test] Improve generate-expected-outputs.py diff output
Khaled Hosny 6ac6a2b2 2021-08-12T00:04:32 [test] hb_ot_layout_language_get_feature_tags()
Khaled Hosny e9b743b2 2021-08-11T23:51:12 [test] hb_ot_layout_script_get_language_tags()
Khaled Hosny bf438b81 2021-08-11T23:23:51 [test] hb_ot_layout_table_get_feature_tags()
Khaled Hosny 2f88ea5a 2021-08-11T23:12:00 [test] hb_ot_layout_table_find_script()
Khaled Hosny f60caad7 2021-08-11T22:54:30 [test] hb_ot_layout_table_get_script_tags()
Garret Rieger c08f1b89 2021-08-10T12:29:32 [map] fix incorrect population count in hash map. If the same key was set twice the population was being incorrectly incremented.
Garret Rieger e39c3bde 2021-08-10T11:41:55 [subset] fix bug in parsing glyf flags. the bytes of the flag stream were being treated as signed integers instead of unsigned as specified in the spec.
Behdad Esfahbod f3acb977 2021-08-10T11:05:40 [test/shaping;util] Use ';' instead of ':' to separate test fields Accept that in --batch mode. Also in batch mode don't send the 0th arg. Related discussion: https://github.com/harfbuzz/harfbuzz/pull/3102
Behdad Esfahbod b83fd3a5 2021-08-10T02:21:05 [util] Refactor batch-processing code into batch.hh
Garret Rieger 8c0c217b 2021-08-06T10:45:38 [subset] fail reference blob in face builder if allocation for table sorting fails. Fixes https://oss-fuzz.com/testcase-detail/5041767803125760
Garret Rieger c2ee1fdd 2021-08-04T16:42:49 [subset] remove unsed table_entry struct.
Garret Rieger dea0fe57 2021-08-04T16:36:20 [subset] discard extra copies of a table in face builder. Fixes #2361. Stores tables in the builder in a hashmap so you end up with at most one copy of each table. Table serialization order is now based on tag sort order instead of order of insertion into the builder.
Garret Rieger 2c024dc3 2021-08-04T11:38:38 [subset] prune redundant cmap12 subtables. If the post subset cmap12 table is equivalent to another cmap subtable don't include the 12 table in the final subset. Matches change https://github.com/fonttools/fonttools/pull/2146 from fontTools.
Khaled Hosny 84946e4d 2021-08-05T00:05:26 [test] Suggest updating the expectation if ttx matches https://github.com/harfbuzz/harfbuzz/issues/3089#issuecomment-892208892
Behdad Esfahbod 5086e105 2021-07-29T17:03:55 [test] Add failing fuzzer test case From https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=36236 https://oss-fuzz.com/testcase-detail/5061207689134080
Khaled Hosny f698fe5a 2021-08-04T12:08:18 [test] Always fail subset tests if hashes don’t match Regardless of the pre sentience or absence of fonttools.
Khaled Hosny 9f544e50 2021-08-04T04:20:14 [test] Don’t skip subset tests early Check for FontTools only when the checksums are mismatching.
Khaled Hosny b0841533 2021-08-04T04:12:31 [test] Remove subset tests from the slow suite
Khaled Hosny 7ccc52b0 2021-08-04T03:57:18 [test] Compare sha256 hash before TTX dumps Most of time the files are identical, so instead of comparing the TTX dump we can check sha256 hashes of the files first and if they match, we don’t have to check the TTX dumps at all, making the subset tests orders of magnitude faster. time meson test --suite=subset down from: real 0m19.418s user 0m38.171s sys 0m3.587s to: real 0m3.102s user 0m8.622s sys 0m1.701s The expected files have been replaced by hb-subset output so they are bit-identical where FontTools output might not. The generate-expected-outputs.py now compares the hb-subset output with fontttols subset and errors of they don’t match.
Khaled Hosny 770fbd5a 2021-08-04T00:07:23 Revert "[test] Speed-up subset tests by saving TTX dump" This reverts commit 278f44dcee34cea25403e42e06668f0afe2328c1.
Khaled Hosny 2cc9ed2b 2021-08-02T22:00:11 [test] More lookup_collect_glyphs() tests
Khaled Hosny 06640374 2021-08-02T19:52:59 [test] More lookup_collect_glyphs() tests
Khaled Hosny ecdd8e3f 2021-08-02T19:36:20 [test] More lookup_collect_glyphs() tests
Khaled Hosny f998d7e1 2021-08-02T16:10:13 [test] Add API test for lookup_collect_glyphs() We don’t seem to have any tests exercising this API at all, and it is a good check of GSUB/GPOS code.
Khaled Hosny 10e73d18 2021-08-01T11:11:12 [test] Add batch mode to hb-subset and use it time meson test --suite=subset down from: real 0m22.822s user 0m44.561s sys 0m9.255s to: real 0m19.418s user 0m38.171s sys 0m3.587s Does not seem to help much, but it is something. Part of https://github.com/harfbuzz/harfbuzz/issues/3089
Khaled Hosny 1fd3a261 2021-08-01T19:38:39 [test] Remove unused shaping tests reference mode
Behdad Esfahbod 05cf8128 2021-08-01T07:59:25 [util/hb-shape] Fix use of EOF as end-of-line EOF is -1, which was being treated as a valid char (255). Use int instead.
Behdad Esfahbod 7cbcdaf6 2021-07-30T11:26:46 Whitespace
Behdad Esfahbod 5d283aa0 2021-07-30T10:15:09 Merge pull request #3095 from harfbuzz/subset-tests-speed [test] Speed-up subset tests by saving TTX dump
Garret Rieger f9d8e4a9 2021-07-29T15:25:41 [subset] switch ..._set_flags to not take a mask.
Garret Rieger 3d534b14 2021-07-29T11:52:14 [subset] convert subset input flags into bit flags. Store the flags in a bit set. Updates the public api to work with the bit set directly.
Khaled Hosny f6c67a5f 2021-07-30T02:20:19 [test] Open file in UTF-8 It is 2021 and Python still does not default to UTF-8 on Windows!
Khaled Hosny bafbade0 2021-07-30T01:42:45 [test] Force FontTools to use \n on all platforms On Windows in helfuly uses \r\n.
Khaled Hosny 278f44dc 2021-07-29T23:43:56 [test] Speed-up subset tests by saving TTX dump Speed-up subset tests by saving TTX dump of expected output instead of generating it each time the tests are run. Cuts down meson test --suite=subset on my system from: real 0m38.977s user 1m12.024s sys 0m10.547s to: real 0m22.291s user 0m44.548s sys 0m9.221s Part of https://github.com/harfbuzz/harfbuzz/issues/3089
Khaled Hosny 72489f3e 2021-07-29T18:20:03 [test] Free memory in hb-aots-tester
Khaled Hosny 895162d6 2021-07-29T18:03:00 [test] Account for mark zeroing in AOTS tests The AOTS are not written with the face that mark glyphs gets their advances zeroed. Taking this into account makes 16 more tests to pass.
Khaled Hosny e65bf605 2021-07-29T17:36:09 [test] make this test runner less verbose Print the command being called once and in a way the can be manually run.
Khaled Hosny 9a7ff54b 2021-07-29T01:52:55 [test] Write one sequence per-line https://github.com/harfbuzz/harfbuzz/pull/3087#issuecomment-888691436
Khaled Hosny ddf87ffb 2021-07-29T01:12:46 [test] Add generated tests for emoji clusters Fixes https://github.com/harfbuzz/harfbuzz/issues/3017 Uses AdobeBlank2.ttf from: https://github.com/adobe-fonts/adobe-blank-2 instead of a dummy empty font so that everything maps to GID 1 and control code points are kept instead of being dropped because there is not space glyph (otherwise we’d need to identify control code points somehow when generating the expectations).
Behdad Esfahbod 6fe0d7d6 2021-07-28T12:06:49 [GSUB] If MultipleSubst is applied to a ligature-component, preserve lig-id Fixes https://github.com/harfbuzz/harfbuzz/issues/3069
Garret Rieger acbd8b27 2021-07-27T14:31:18 [subset] temporarily disable COLRv1 subsetting. Currently COLRv1 spec is being changed so the subsetting implementation is out of sync. Disable subsetting by failing sanitization for COLRv1 tables and disable all colrv1 tests.
Behdad Esfahbod 0ded6a70 2021-07-28T11:28:38 [subset] Fix another fuzzer issue Addition could overflow on 32bit arch. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=36636 Fixes https://oss-fuzz.com/testcase-detail/5072358514753536
Khaled Hosny c65e1e08 2021-07-28T17:04:10 [test] Run AOTS cmap tests with ot font functions only We are not interested in testing FreeType cmap support. Fixes most format 4 tests. The remaining test seems to be peculiar, and I can’t find any cmap implementation that produces the expected output.
Khaled Hosny 8396c523 2021-07-28T16:29:43 [test] Add AOTS cmap tests Uses https://github.com/adobe-type-tools/aots/pull/3 Related to https://github.com/unicode-org/text-rendering-tests/issues/70 We don’t support format 4 or 8, so these tests are disabled. We support format 4 but most of the tests are failing, investigating.
Khaled Hosny 50379fbb 2021-07-28T16:13:49 [util] Don’t split text at new lines in batch mode In batch mode (which is used for testing) we are probably not interested in splitting text into lines as we could have split the string into different tests. This fixes a bunch of AOTS tests that use newlines as input.
Khaled Hosny 92b85749 2021-07-28T15:56:53 [util] Strip quotes when parsing features When running in batch mode, the quotes are not stripped by the shell and end up in the feature string. This breaks one of the AOTS tests. Alternatively, we can remove the quotes from the test files, not sure which is less hacky, though!
Khaled Hosny ad9559e3 2021-07-28T14:35:23 [tests] Make AOTS update.py work on macOS Use C++ compiler and make sure C++11 is used.
Khaled Hosny d84efca3 2021-07-28T13:17:41 [tests] Add missed test file to Makefile/meson It was introduced in 205737acdc268b1c90cf00bde2d2038519a8bf48 but was not actually used. See https://github.com/harfbuzz/harfbuzz/issues/2098
Garret Rieger 09474d8d 2021-06-29T16:07:14 [subset] Fix fuzzer timeout in add_gid_and_children. The composite glyph graph isn't check for max operations by sanitize so track an operations count during the graph traversal.
Behdad Esfahbod c68a00b9 2021-07-27T13:25:22 [subset] Fix possible overflows in VarRegionList serialize Fixes https://oss-fuzz.com/testcase-detail/5362189182566400
Behdad Esfahbod 4762fcb4 2021-07-26T11:48:55 Merge pull request #3067 from googlefonts/glyph_names [subset] support option --glyph-names
Behdad Esfahbod aeec2784 2021-07-26T11:31:54 Merge pull request #3068 from harfbuzz/hoi [variations] Support multiple axes with same tag, aka HOI
Qunxin Liu 71b5509c 2021-07-20T20:05:35 [subset] support option --glyph-names
Behdad Esfahbod b235511e 2021-07-23T12:15:15 Merge pull request #3021 from googlefonts/stable_api [subset] update hb_subset api with final changes before going stable.