mirror of
https://github.com/flutter/flutter.git
synced 2026-02-20 02:29:02 +08:00
69 lines
2.1 KiB
Markdown
69 lines
2.1 KiB
Markdown
Prerequisites
|
|
=============
|
|
|
|
You can use your Ubuntu box (>= 8.04. 9.10 is recommended) to test OTS library.
|
|
|
|
First, install TrueType and OpenType fonts to the Ubuntu box as many as
|
|
possible.
|
|
|
|
% sudo apt-get install ttf-.*[^0]$
|
|
|
|
Then, put malicious TrueType fonts on `~/malicious/`. For details, please check
|
|
http://code.google.com/p/chromium/issues/detail?id=27139#c2. Currently access
|
|
to the issue is limited to chromium-security team members for security reasons.
|
|
|
|
% cd
|
|
% tar xjf ~/ttf-testsuite.tar.bz2
|
|
|
|
Test
|
|
====
|
|
|
|
In order to verify that:
|
|
|
|
1. OTS does not reject these unmalicious fonts.
|
|
2. and transcoded fonts OTS generates can be loaded by a system font renderer (FreeType2).
|
|
|
|
Run `test_unmalicious_fonts.sh` script:
|
|
|
|
% cd /path/to/ots/tests
|
|
% ./test_unmalicious_fonts.sh
|
|
............................................... (verify that no FAIL: is displayed)
|
|
|
|
Then in order to verify that:
|
|
|
|
1. OTS can reject malicious fonts
|
|
2. or transcoded fonts generated by OTS do not crash a system font renderer (FreeType2).
|
|
|
|
Run `test_malicious_fonts.sh` script:
|
|
|
|
% cd /path/to/ots/tests
|
|
% ./test_malicious_fonts.sh
|
|
............................................... (verify that no FAIL: is displayed)
|
|
|
|
Command line tools
|
|
==================
|
|
|
|
We have some command line tools for tests. To build them:
|
|
|
|
- On Linux:
|
|
|
|
% gyp --depth=. -f make ots-standalone.gyp
|
|
% make
|
|
(tool is located at build/Default directory)
|
|
|
|
- On Windows (VC++ is needed):
|
|
|
|
% gyp --depth=. -f msvs ots-standalone.gyp
|
|
% devenv.exe /build Default ots-standalone.sln /project idempotent.vcproj
|
|
(tool is located at Default directory)
|
|
|
|
- On Mac (XCode is needed):
|
|
|
|
% gyp --depth=. -f xcode ots-standalone.gyp
|
|
% xcodebuild -configuration Default -project ots-standalone.xcodeproj -target All
|
|
(tool is located at build/Default directory)
|
|
|
|
You can use `idempotent` tool to check whether a font will be rejected or not.
|
|
You can also use `ot-sanitise` tool to get sanitised font (it is available on
|
|
Linux for now). See README file in the test directory for more details.
|