Behdad Esfahbod
8dada08d4d
[mtiLib] Enable cmap test now that it passes
...
Was failing before 312203b6610f513509063dfc7e823bbf9ea55e29
2016-12-27 18:42:09 -05:00
Behdad Esfahbod
312203b661
[cmap] Skip gid=0 entries when decompiling cmap
...
gid=0 means "not mapped". Many of the cmap formats use this to
optimize byte encoding. When reading these tables, we don't
want to map charcodes to gid0 in the resulting struct.
2016-12-27 18:42:03 -05:00
Behdad Esfahbod
05950fcbab
[cmap] Rewrite loop
2016-12-27 18:38:42 -05:00
Behdad Esfahbod
48f4e4ed04
[cmap] Factor out some common code
2016-12-27 18:36:59 -05:00
Behdad Esfahbod
7236533eb2
[mtiLib] Prepare for enabling cmap test
2016-12-27 18:16:09 -05:00
Behdad Esfahbod
8528dc9d7c
[mtiLib] Add commnent re emitting empty lookups
2016-12-27 15:22:23 -05:00
Behdad Esfahbod
4b38a20cee
[mtiLib] Set lookup type even if lookup is empty
...
For real this time.
2016-12-27 15:19:22 -05:00
Behdad Esfahbod
6380b7041c
[mtiLib] Set LookupType even for empty lookup
2016-12-27 15:17:04 -05:00
Behdad Esfahbod
7af5f9a343
[mtiLib] Port remaining types to new internal API
2016-12-27 15:15:48 -05:00
Behdad Esfahbod
86717f390b
[mtiLib] Minor
2016-12-27 15:06:03 -05:00
Behdad Esfahbod
621a0613bc
[mtiLib] Parse lookup-flags earlier
...
Such that we set them even if lookup block is empty.
2016-12-27 13:59:12 -05:00
Behdad Esfahbod
cf09589729
[mtiLib] Format
2016-12-27 13:42:17 -05:00
Behdad Esfahbod
a6178fd4fb
[mtiLib] Fix and enable chained-glyph test
2016-12-27 13:40:27 -05:00
Behdad Esfahbod
1896353af0
[mtiLib] Enable testing same source against multiple tableTags
2016-12-27 13:38:51 -05:00
Behdad Esfahbod
2f800c9384
[mtiLib] Allow empty lookup
2016-12-27 13:37:11 -05:00
Behdad Esfahbod
edd46bb14a
[mtiLib] Remove use of MockFont in tests
...
Tests pass on both Python 2 and 3 now. Yay!
MockFont is handy for mtiLib.__init__:main(). Not sure how useful it is
otherwise, and what to replace it with.
2016-12-27 13:28:06 -05:00
Behdad Esfahbod
f6294ba7bd
[mtiLib] More deterministic output with MockFont
2016-12-27 13:09:39 -05:00
Behdad Esfahbod
8358a7248f
[mtiLib] Make output more deterministic with MockFont
...
I'll first make Python 2 and 3 both generate same output for tests with
MockFont, then will probably hardcode glyphorder and remove MockFont
completely and remove hacks I added to make tests work with MockFont.
2016-12-27 13:03:37 -05:00
Behdad Esfahbod
2034cef52f
Write test diffs to stderr, not stdout
2016-12-26 20:30:00 -05:00
Behdad Esfahbod
0661b0805b
[mtiLib] Fix warnings in tests with Python3
2016-12-26 20:15:53 -05:00
Behdad Esfahbod
31b6aab8e1
[mtiLib] One more try to make bots happy
2016-12-26 18:06:44 -05:00
Behdad Esfahbod
ab01846a8d
[mtiLib] Add some more tests
2016-12-26 17:35:21 -05:00
Behdad Esfahbod
2d3610bb6b
Ignore class=0 when reading & writing ClassDef objects
...
class=0 items might be added as an optimization. They have no semantic value.
Ignore them.
Fixes the last of mtiLib tests.
2016-12-26 17:26:14 -05:00
Behdad Esfahbod
101303ab50
[mtiLib] Fix two more tests
2016-12-26 17:14:39 -05:00
Behdad Esfahbod
fc25b26ca2
[mtiLib] Fix expected output of two remaining tests
2016-12-26 16:58:19 -05:00
Behdad Esfahbod
795e66747c
Print XML output from compil-roundtripped object, not the built one
...
This is almost always the correct thing to print. If the two differ, that's
bad, but print the better one.
2016-12-26 16:50:00 -05:00
Behdad Esfahbod
8c571d1b73
[mtiLib] Fix order of diffing test outputs
2016-12-26 16:49:48 -05:00
Behdad Esfahbod
3689f0ffdc
[mtiLib] Whitespace
2016-12-26 16:39:50 -05:00
Behdad Esfahbod
aa3b94db0a
[mtiLib] Fix mti/gpospairglyph test
2016-12-26 16:36:38 -05:00
Behdad Esfahbod
f4c9134957
[mtiLib] Fix gposmarktobase test
2016-12-26 16:29:20 -05:00
Behdad Esfahbod
4f6dea2d99
[mtiLib] Fix gpossingle test
2016-12-26 16:27:45 -05:00
Behdad Esfahbod
730f77a606
[mtiLib] Make test pass
...
mark-to-ligature was failing because we were not setting ClassCount.
2016-12-26 16:23:02 -05:00
Behdad Esfahbod
180362d30c
[mtiLib] Add test data from spec, with test runner
2016-12-26 16:22:54 -05:00
Behdad Esfahbod
5858750dc3
[mtiLib] Fix warnings
2016-12-26 15:29:09 -05:00
Behdad Esfahbod
6c140cbba1
[testTools] Move MockFont from mtiLib to testTools
...
This is useful for testing beyond just mtiLib.
2016-12-26 14:34:29 -05:00
Cosimo Lupo
1f086bb230
Bump version: 3.4.0 → 3.4.1.dev0
2016-12-21 18:13:54 +00:00
Cosimo Lupo
fc7cc64e81
Release 3.4.0
2016-12-21 16:08:55 +00:00
Cosimo Lupo
dd5e9a8a28
testTools: fix failing tests on Python 3.4
...
Apparently b"string %s" % (b"interpolation") works on Python 3.5 but not on 3.4.
We whall maybe start thinking about dropping support for 3.4, now that 3.6 is out next week...
2016-12-21 14:12:43 +00:00
Cosimo Lupo
689d0c3fe4
set maxDiff=None attribute only once, using setUpClass
method of unittest.TestCase
2016-12-21 13:57:44 +00:00
Cosimo Lupo
f112a05be2
adjust unit tests to expect a list of strings from getXML()
2016-12-21 13:57:44 +00:00
Cosimo Lupo
dff319f14e
testTools_test: add test for getXML; test bytes, unicode and list input for parseXML
2016-12-21 13:57:39 +00:00
Cosimo Lupo
540f0c32b4
testTools: getXML returns a list of strings; parseXML also accepts both a string or list of strings
...
When writing unit tests for XML data, it is more convenient to compare
list of lines, instead of a single string without newlines.
This helps identifying which lines in the diff printed on the console
don't match the expected result.
So, getXML now returns a list of lines,
To allow passing the same list of lines to the complementary parseXML
function in the roundtrip tests, parseXML now also accepts a list of
strings, as well as a single string.
We also use unicode_literals, and ensure that if the test modules passes
unicode str, we first encode to UTF-8 before passing on to expat XML
parser. This is because on Python 2, expat only accepts bytes strings.
2016-12-21 13:57:33 +00:00
Denis Moyogo Jacquerye
d2f5c63fef
STAT: test_compile_* tests ( #783 )
2016-12-21 10:53:32 +01:00
Denis Moyogo Jacquerye
71df2fe7d5
Add MVAR tests ( #781 )
...
* MVAR: add decompile_toXML test
* MVAR: add test_compile_fromXML
* M_V_A_R_test.py: if __name__ == '__main__'
2016-12-21 08:33:55 +01:00
Cosimo Lupo
be6afae761
builder_test: add test for omitted class definitions
2016-12-20 13:27:03 +00:00
Cosimo Lupo
f147398554
ast: write commas for empty glyph classes in GlyphClassDef statement
2016-12-20 13:26:48 +00:00
Cosimo Lupo
60e9fed16d
[minor] whitespace
2016-12-20 12:51:33 +00:00
Cosimo Lupo
934cbd72be
builder_test: open with UTF-8 encoding to fix failing Appveyor tests
...
https://ci.appveyor.com/project/fonttools/fonttools/build/1.0.259/job/yi83cj0hhid3asb8
2016-12-20 12:47:31 +00:00
Martin Hosken
3c2cc8e6aa
fea2fea passes all tests
2016-12-20 11:58:37 +00:00
Martin Hosken
e41bf35f06
Fix nameid type tests
2016-12-20 11:55:52 +00:00