Cosimo Lupo
2b6e813b98
varLib/merger_test: minor reorder sub-tests to follow incremental PaintFormat
2022-06-27 15:38:55 +01:00
Cosimo Lupo
f98c860ff2
Start adding Tests/varLib/merger_test.py for COLRVariationMerger
2022-06-24 18:16:28 +01:00
Cosimo Lupo
fcd2a67f52
Merge remote-tracking branch 'origin/main' into variable-colr
2022-06-24 10:16:51 +01:00
Behdad Esfahbod
5d70109645
[varStore] Comment
2022-06-23 12:01:20 -06:00
Behdad Esfahbod
e01f643a8e
[varLib.varStore] Support NO_VARIATION_INDEX in optimizer & instancer
...
Fixes https://github.com/fonttools/fonttools/issues/2211
2022-06-23 12:01:20 -06:00
Cosimo Lupo
bc8f1cfac4
varLib.errors: more informative message with unsupported/inconsistent formats
2022-06-21 17:27:12 +01:00
Behdad Esfahbod
0d7d7d4e11
[varLib.iup] Rewrite force-set conditions & limit DP lookback length
...
This does two things:
Fixes forced-set computation, which was wrong in multiple ways.
Debugged it. Is solid now... Famous last words.
Speeds up DP time by limiting DP lookback length. For Noto Sans,
IUP time drops from 23s down to 9s, with only a slight size increase
in the final font. This basically turns the algorithm from O(n^3) into
O(n).
2022-06-20 17:09:36 -06:00
Cosimo Lupo
4fff281c7e
varLib_test: fix expected error message
2022-06-13 12:19:38 +01:00
Nikolaus Waxweiler
9f984d93f7
Fix up tests
2022-04-29 18:13:03 +01:00
Jany Belluz
2ea5dc3496
[varLib] Add support for designspace 5 + STAT generation + tests
2022-04-14 15:05:50 +01:00
Simon Cozens
2d62a2ac9e
Disable GSUB5 optimization ( #2540 )
...
* Disable GSUB5/GPOS7 optimization
* Revert "Fixup test expectations"
This reverts commit 7db13c9872884772312727e3478fb36ed9883004.
* Revert "Rename GPOS8->GPOS7"
This reverts commit 6d4c5fe31c9199e6d3e46cd0808e7640d1610e75.
* Revert "Fix varlib test expectations - now badly named."
This reverts commit 4adea942cc73b6afe58e00278da6cb3795935970.
* Allow GSUB5, disable GPOS7
* Revert "Revert "Fixup test expectations""
This reverts commit 42993ae6917f8f6e4c31f4be123caca24d27d2da.
* Fix up expectations
2022-04-08 15:54:34 +01:00
Cosimo Lupo
7ee2c9d891
testTools: factor our method to strip variable items from ttx dumps
...
it was scattered here and there, so define it once and reuse everywhere needed
2022-04-05 18:34:30 +01:00
Khaled Hosny
47457b14d6
[varLib] Fix instantiating some SinglePos subtables ( #2555 )
2022-03-22 08:34:18 +00:00
Khaled Hosny
232b2ccbc4
Move the rest of py23 module to textTools
...
Change all imports to use textTools module, except the test_py23.py test
which is kept until we decide to remove the module (if ever).
2021-08-20 01:29:45 +02:00
Khaled Hosny
000bf81700
Default to "\n" for newlinestr instead of None
...
If newlinestr is None, os.linesep is used, bu it is the third millennium
and we don’t need or want different line endings per-platform.
2021-07-30 04:12:33 +02:00
Cosimo Lupo
dafce3ff46
instancer_test: add test with PairPos ValueRecord with XAdvDevice but no XAdvance
...
this currently raises AttributeError in MutatorMerger.merge for ValueRecord table, because the latter assumes that whenever one of the Device tables are present the respective non-device values are also present, but they may be omitted (and it should default to 0 when missing)
2021-05-25 12:30:35 +01:00
justvanrossum
2636325844
font placeholder doesn't need an fvar table
2021-05-04 19:29:39 +02:00
justvanrossum
d3fd46e3f3
uncomment failing tests
2021-05-04 18:21:37 +02:00
justvanrossum
ad438931e4
adding compile/decompile step; this currently fails for the 32-bit tests (which are therefore commented out)
2021-05-04 17:08:27 +02:00
justvanrossum
267ab2baba
add 32-bit master value tests
2021-05-04 16:39:20 +02:00
justvanrossum
22dda54616
use optimizer
2021-05-04 16:19:48 +02:00
justvanrossum
7de2f347c5
add tests for OnlineVarStoreBuilder/VarStoreInstancer
2021-05-04 16:12:24 +02:00
justvanrossum
a7fd202952
add 32-bit tests to test_buildVarData_optimize
2021-05-04 14:49:12 +02:00
justvanrossum
eba058d439
add 32-bit tests to test_buildVarData_no_optimize
2021-05-04 14:41:01 +02:00
Zachary Scheuren
41da60f130
Add missing dict operators to CFF2
2021-03-30 21:24:14 +09:00
Just van Rossum
5fc65d7168
Misc py23 cleanups ( #2243 )
...
* Replaced all from ...py23 import * with explicit name imports, or removed completely when possible.
* Replaced tounicode() with tostr()
* Changed all BytesIO ans StringIO imports to from io import ..., replaced all UnicodeIO with StringIO.
* Replaced all unichr() with chr()
* Misc minor tweaks and fixes
2021-03-29 11:45:58 +02:00
Behdad Esfahbod
2a483f9856
[Tests] Fix most test expectations for AlternateSubst .Format removal
2021-03-23 18:01:32 -07:00
Behdad Esfahbod
6b2b2f4949
[Tests] Fix most test expectations for ClassDef[12] .Format removal
2021-03-23 11:43:46 -07:00
Behdad Esfahbod
9ac1f39045
[Tests] Fix most test expectations for AlternateSubst .Format removal
2021-03-23 11:43:22 -07:00
Behdad Esfahbod
b62170e86d
[Tests] Fix most tests expectations for LigatureSubst .Format change
2021-03-23 11:43:15 -07:00
Behdad Esfahbod
61b06a7fe0
[Tests] Fix most tests expectations for SingleSubst .Format change
2021-03-23 11:43:03 -07:00
Behdad Esfahbod
de81aae164
[Tests] Fix more tests expectations for Coverage/ClassDef .Format change
2021-03-23 11:42:54 -07:00
Behdad Esfahbod
975f85ed72
[Tests] Fix most tests expectations for Coverage/ClassDef .Format change
2021-03-23 11:42:38 -07:00
Simon Cozens
23cb8b989b
More tests
2021-03-18 21:24:13 +00:00
Simon Cozens
8a6e3087ce
Use pytest exception handling
2021-03-17 11:55:51 +00:00
Simon Cozens
0a1aa19c39
Test for better error message
2021-03-15 13:12:11 +00:00
Behdad Esfahbod
ed6164a44f
[varLib.cff] Round deltas using bankers round as well
...
See https://github.com/fonttools/fonttools/pull/2214#issuecomment-790742479
Good news: this reverted the one CFF test that needed its expectation to
change when I started this patchset. Bad news: it introduced a couple other
diffs to the same glyph of the same test, which is consistent with changing
the rounding from otRound to round3.
2021-03-04 13:10:01 -07:00
Behdad Esfahbod
68004b8fec
[varLib] Shift most (all?) delta-rounding to VarModel
...
Reduces error.
The main varfont-builder now asks the model to do rounding, and asks
VariationStore to do no rounding, so we don't spend extra times rounding
multiple times (specially with the heavy otRound).
I *think* I got it all and right...
Fixes https://github.com/fonttools/fonttools/issues/2213
2021-03-04 09:20:43 -07:00
Marc Foley
52fec53d20
Drop nameID 25 if instantiating a static font
2021-02-26 10:32:38 +00:00
Marc Foley
a7913ef50e
Add test for Regular fallback
2021-02-26 10:32:38 +00:00
Cosimo Lupo
2be13d50ac
make instancer into a package dir and move all names-related funcs to submodule
...
move instancer tests to Tests/varLib/instancer directory
create instancer/__main__.py to make package executable
2021-02-26 10:31:30 +00:00
Marc Foley
0280eb36cc
Parametrize updateNameTable tests
2021-02-26 10:19:43 +00:00
Marc Foley
336e7827e7
Implement Cosimo feedback
2021-02-26 10:19:43 +00:00
Marc Foley
29e4ff987c
instancer: implement Cosimo feedback
2021-02-26 10:19:43 +00:00
Marc Foley
0bcbbfdbb5
instancer: reuse existing instantiateSTAT func
2021-02-26 10:19:43 +00:00
Marc Foley
9a72311d19
instancer: refactor updateNameTable
2021-02-26 10:19:43 +00:00
Marc Foley
b328475072
wip instancer: update uniqueID
2021-02-26 10:19:43 +00:00
Marc Foley
ce1d8a9955
instancer: Add axisDefaults to axisLimits
2021-02-26 10:19:43 +00:00
Marc Foley
69c8667982
instancer: sort axisValues so format 4 are dominant for constructing names
2021-02-26 10:19:43 +00:00
Marc Foley
b4b1ce3579
instancer: include attribute axisValues
2021-02-26 10:19:42 +00:00