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
This commit is contained in:
caryclark@google.com 2013-04-11 12:33:23 +00:00
parent 391ca66276
commit db60de7cbe
6 changed files with 12 additions and 5 deletions

View File

@ -17,6 +17,7 @@
'SampleApp.gyp:SampleApp',
'tests.gyp:tests',
'tools.gyp:tools',
'pathops_unittest.gyp:*',
],
'conditions': [
['skia_os == "android"', {

View File

@ -7,6 +7,7 @@
{
'target_name': 'pathops_unittest',
'type': 'executable',
'suppress_wildcard': '1',
'include_dirs' : [
'../include/pathops',
'../src/core',

View File

@ -18,11 +18,14 @@
#define ONE_OFF_DEBUG 0
#define ONE_OFF_DEBUG_MATHEMATICA 0
#ifdef SK_BUILD_FOR_WIN
#if defined(SK_BUILD_FOR_WIN) || defined(SK_BUILD_FOR_ANDROID)
#define SK_RAND(seed) rand()
#define SK_SNPRINTF _snprintf
#else
#define SK_RAND(seed) rand_r(&seed)
#endif
#ifdef SK_BUILD_FOR_WIN
#define SK_SNPRINTF _snprintf
#else
#define SK_SNPRINTF snprintf
#endif

View File

@ -305,7 +305,7 @@ static void oneOffTests(skiatest::Reporter* reporter) {
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) {

View File

@ -81,7 +81,8 @@ static void testQuadLineIntersectMain(PathOpsThreadState* data)
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) {

View File

@ -11,6 +11,7 @@
#include "SkRefCnt.h"
#include "SkString.h"
#include "SkTRegistry.h"
#include "SkThread.h"
class GrContextFactory;
@ -31,7 +32,7 @@ namespace skiatest {
};
void resetReporting();
void bumpTestCount() { ++fTestCount; }
void bumpTestCount() { sk_atomic_inc(&fTestCount); }
int countTests() const { return fTestCount; }
int countResults(Result r) {
SkASSERT((unsigned)r <= kLastResult);