shape ops work in progress

first cut at getting binary ops to work
(union/intersection/diff/xor)

git-svn-id: http://skia.googlecode.com/svn/trunk@6375 2bbb7eff-a529-9590-31e7-b0007b416f81
diff --git a/experimental/Intersection/EdgeWalker_TestUtility.cpp b/experimental/Intersection/EdgeWalker_TestUtility.cpp
index e236cca..7887b54 100644
--- a/experimental/Intersection/EdgeWalker_TestUtility.cpp
+++ b/experimental/Intersection/EdgeWalker_TestUtility.cpp
@@ -286,6 +286,24 @@
     return result == 0;
 }
 
+bool testShapeOp(const SkPath& a, const SkPath& b, const ShapeOp shapeOp) {
+    SkPath out;
+    operate(a, b, shapeOp, out);
+    SkPath pathOut;
+    SkRegion rgnA, rgnB, openClip, rgnOut;
+    openClip.setRect(-16000, -16000, 16000, 16000);
+    rgnA.setPath(a, openClip);
+    rgnB.setPath(b, openClip);
+    rgnOut.op(rgnA, rgnB, (SkRegion::Op) shapeOp);
+    rgnOut.getBoundaryPath(&pathOut);
+    SkBitmap bitmap;
+    int result = comparePaths(pathOut, out, bitmap);
+    if (result && gPathStrAssert) {
+        SkASSERT(0);
+    }
+    return result == 0;
+}
+
 const int maxThreadsAllocated = 64;
 static int maxThreads = 1;
 static int threadIndex;