shape ops test fixes

- fix rand for Android
- build unit test on linux
- use atomic inc in test count
- add casting for Android

git-svn-id: http://skia.googlecode.com/svn/trunk@8610 2bbb7eff-a529-9590-31e7-b0007b416f81
diff --git a/tests/PathOpsCubicIntersectionTest.cpp b/tests/PathOpsCubicIntersectionTest.cpp
index 5a6a336..be9781d 100644
--- a/tests/PathOpsCubicIntersectionTest.cpp
+++ b/tests/PathOpsCubicIntersectionTest.cpp
@@ -305,7 +305,7 @@
 static void CubicIntersection_RandTest(skiatest::Reporter* reporter) {
     srand(0);
     const int tests = 10000000;
-#ifndef SK_BUILD_FOR_WIN
+#if !defined(SK_BUILD_FOR_WIN) && !defined(SK_BUILD_FOR_ANDROID)
     unsigned seed = 0;
 #endif
     for (int test = 0; test < tests; ++test) {
diff --git a/tests/PathOpsQuadLineIntersectionThreadedTest.cpp b/tests/PathOpsQuadLineIntersectionThreadedTest.cpp
index c74e961..a931221 100644
--- a/tests/PathOpsQuadLineIntersectionThreadedTest.cpp
+++ b/tests/PathOpsQuadLineIntersectionThreadedTest.cpp
@@ -81,7 +81,8 @@
     int by = state.fB >> 2;
     int cx = state.fC & 0x03;
     int cy = state.fC >> 2;
-    SkDQuad quad = {{{ax, ay}, {bx, by}, {cx, cy}}};
+    SkDQuad quad = {{{(double) ax, (double) ay}, {(double) bx, (double) by},
+            {(double) cx, (double) cy}}};
     SkReduceOrder reducer;
     int order = reducer.reduce(quad, SkReduceOrder::kFill_Style);
     if (order < 3) {
diff --git a/tests/Test.h b/tests/Test.h
index f90edab..bfb4d60 100644
--- a/tests/Test.h
+++ b/tests/Test.h
@@ -11,6 +11,7 @@
 #include "SkRefCnt.h"
 #include "SkString.h"
 #include "SkTRegistry.h"
+#include "SkThread.h"
 
 class GrContextFactory;
 
@@ -31,7 +32,7 @@
         };
 
         void resetReporting();
-        void bumpTestCount() { ++fTestCount; }
+        void bumpTestCount() { sk_atomic_inc(&fTestCount); }
         int countTests() const { return fTestCount; }
         int countResults(Result r) {
             SkASSERT((unsigned)r <= kLastResult);