| Index: third_party/ots/docs/HowToTest.md
 | 
| diff --git a/third_party/ots/docs/HowToTest.md b/third_party/ots/docs/HowToTest.md
 | 
| new file mode 100644
 | 
| index 0000000000000000000000000000000000000000..a18ee3474ad2360fadf073c46b90b4e9805491cf
 | 
| --- /dev/null
 | 
| +++ b/third_party/ots/docs/HowToTest.md
 | 
| @@ -0,0 +1,68 @@
 | 
| +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.
 | 
| 
 |