Re: Authoring Tool Test Suite

On Tuesday, March 22, 2011, 12:53:13 PM, Tal wrote:

TL> On Mar 16, 2011, at 2:06 PM, Chris Lilley wrote:

>> TL> http://dev.w3.org/webfonts/WOFF/spec/#conform-compressedlarger

>>>> If the length of a compressed font table would be the same as or greater than the length of the input font table, the font table MUST be stored uncompressed in the WOFF file and the compLength set equal to the origLength.

>> I believe this is easy enough to test, create some tables which are very short and would be bigger if gzipped.

TL> I added this one. It contains a non-standard "TEST" table that consists of one null byte.


>> TL> http://dev.w3.org/webfonts/WOFF/spec/#conform-ascending

>>>> WOFF-producing tools MUST produce a table directory with entries in ascending tag value order.

>> Provide a few SFNT with a selection of tables (perhaps one with some commn tables, one with some common and uncommon ones, one with common and made-up ones) and check the created WOFF to ensure that tables are in ascending order as required by WOFF (and by OpenType).


TL> I could add some non-standard tables with these names:

TL>         1AAA
TL>         2AAA
TL>         A1AA
TL>         A2AA
TL>         AA1A
TL>   [... etc ...]
TL>         ZZZ8

TL> Do you think this would be enough for a test?

I think that is ample. It covers basic case-sensitive ordering.


>> TL> http://dev.w3.org/webfonts/WOFF/spec/#conform-identical

>>>> The result of creating a WOFF file and then decoding this to regenerate an sfnt font MUST result in a final font that is bitwise-identical to the well-formed input font.

>> TL> I suppose that for this one we can create one or more valid SFNT
>> TL> files for an authoring tool to roundtrip. Is that the best way to handle this assertion?

>> I would think so.

TL> At the end of the last call I mentioned that we could provide not
TL> only the SFNT files but also small scripts that would validate the
TL> results of these tricky test cases. I've been thinking about this
TL> more and I think it would be easier to simply say "Pass the result
TL> of the conversion of this test case through the WOFF validator and
TL> check to make sure that X is valid."

Do you mean "sfnt validator", or do you mean "extend the woff validator to accept sfnt as well"?

TL>  I can modify the validator to
TL> optionally take an SFNT for byte-for-byte reconstruction checking.
TL> I think that would cover everything we need.

Ah, as an extra parameter? So it takes a woff and an sfnt and checks that the de-woffified result is the same as the other input?




-- 
 Chris Lilley   Technical Director, Interaction Domain                 
 W3C Graphics Activity Lead, Fonts Activity Lead
 Co-Chair, W3C Hypertext CG
 Member, CSS, WebFonts, SVG Working Groups

Received on Tuesday, 22 March 2011 13:31:44 UTC