diff options
Diffstat (limited to 'site/dev/contrib/tests.md')
-rw-r--r-- | site/dev/contrib/tests.md | 65 |
1 files changed, 65 insertions, 0 deletions
diff --git a/site/dev/contrib/tests.md b/site/dev/contrib/tests.md new file mode 100644 index 0000000000..fbe84dfeff --- /dev/null +++ b/site/dev/contrib/tests.md @@ -0,0 +1,65 @@ +Writing Unit and Rendering Tests +================================ + +Writing a Unit Test +------------------- + +1. Add a file `tests/NewUnitTest.cpp`: + + <!--?prettify lang=cc?--> + + /* + * Copyright ........ + * + * Use of this source code is governed by a BSD-style license + * that can be found in the LICENSE file. + */ + #include "Test.h" + DEF_TEST(NewUnitTest, reporter) { + if (1 + 1 != 2) { + ERRORF(reporter, "%d + %d != %d", 1, 1, 2); + } + bool lifeIsGood = true; + REPORTER_ASSERT(reporter, lifeIsGood); + } + +2. Add a line to `gyp/tests.gypi`: + + '../tests/NewUnitTest.cpp', + +3. Recompile and run test: + + ./gyp_skia + ninja -C out/Debug dm + out/Debug/dm --match NewUnitTest + +Writing a Rendering Test +------------------------ + +1. Add a file `gm/newgmtest.cpp`: + + <!--?prettify lang=cc?--> + + /* + * Copyright ........ + * + * Use of this source code is governed by a BSD-style license + * that can be found in the LICENSE file. + */ + #include "gm.h" + DEF_SIMPLE_GM(newgmtest, canvas, 128, 128) { + canvas->clear(SK_ColorWHITE); + SkPaint p; + p.setStrokeWidth(2); + canvas->drawLine(16, 16, 112, 112, p); + } + +2. Add a line to `gyp/gmslides.gypi`: + + '../gm/newgmtest.cpp', + +3. Recompile and run test: + + ./gyp_skia + ninja -C out/Debug dm + out/Debug/dm --match newgmtest |