diff options
Diffstat (limited to 'tests/ParsePathTest.cpp')
-rw-r--r-- | tests/ParsePathTest.cpp | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/tests/ParsePathTest.cpp b/tests/ParsePathTest.cpp index 561eed04b5..fa239c2b3d 100644 --- a/tests/ParsePathTest.cpp +++ b/tests/ParsePathTest.cpp @@ -71,3 +71,20 @@ DEF_TEST(ParsePath_invalid, r) { bool success = SkParsePath::FromSVGString("M 5", &path); REPORTER_ASSERT(r, !success); } + +#include "random_parse_path.h" +#include "SkRandom.h" + +DEF_TEST(ParsePathRandom, r) { + SkRandom rand; + for (int index = 0; index < 1000; ++index) { + SkPath path, path2; + SkString spec; + uint32_t count = rand.nextRangeU(0, 10); + for (uint32_t i = 0; i < count; ++i) { + spec.append(MakeRandomParsePathPiece(&rand)); + } + bool success = SkParsePath::FromSVGString(spec.c_str(), &path); + REPORTER_ASSERT(r, success); + } +} |