aboutsummaryrefslogtreecommitdiffhomepage
path: root/tests/ParsePathTest.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'tests/ParsePathTest.cpp')
-rw-r--r--tests/ParsePathTest.cpp17
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);
+ }
+}