Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(273)

Unified Diff: tests/PathOpsExtendedTest.h

Issue 14072002: Make parallel unit testing work on windows (Closed) Base URL: http://skia.googlecode.com/svn/trunk/
Patch Set: Created 7 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « tests/PathOpsCubicIntersectionTestData.cpp ('k') | tests/PathOpsExtendedTest.cpp » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: tests/PathOpsExtendedTest.h
===================================================================
--- tests/PathOpsExtendedTest.h (revision 8570)
+++ tests/PathOpsExtendedTest.h (working copy)
@@ -7,45 +7,21 @@
#ifndef PathOpsExtendedTest_DEFINED
#define PathOpsExtendedTest_DEFINED
-#include "Test.h"
-#include "SkPathOpsTypes.h"
#include "SkBitmap.h"
#include "SkPath.h"
+#include "SkPathOpsTypes.h"
#include "SkStream.h"
-
-#ifdef SK_BUILD_FOR_WIN
-#define HARD_CODE_PTHREAD 0
-#else
-#define HARD_CODE_PTHREAD 1
-#endif
-
-#if HARD_CODE_PTHREAD
-#include <pthread.h>
-#else
#include "SkThread.h"
-#include "../../src/utils/SkThreadUtils.h"
-#endif
+#include "SkThreadUtils.h"
+#include "Test.h"
-#if HARD_CODE_PTHREAD
-typedef void* (*ThreadFunction)(void*);
-#define THREAD_TYPE void*
-#define THREAD_RETURN return NULL;
-#else
-typedef void (*ThreadFunction)(void*);
-#define THREAD_TYPE void
-#define THREAD_RETURN
-#endif
+struct PathOpsThreadState;
-struct State4;
-
struct TestDesc {
void (*fun)(skiatest::Reporter*);
const char* str;
};
-extern bool gShowTestProgress;
-extern bool gAllowExtendedTest;
-
//extern int comparePaths(const SkPath& one, const SkPath& two);
extern int comparePaths(const SkPath& one, const SkPath& two, SkBitmap& bitmap);
extern bool drawAsciiPaths(const SkPath& one, const SkPath& two, bool drawPaths);
@@ -55,46 +31,14 @@
extern void showPathData(const SkPath& path);
extern bool testPathOp(skiatest::Reporter* reporter, const SkPath& a, const SkPath& b,
const SkPathOp );
-extern bool testSimplify(SkPath& path, bool useXor, SkPath& out,
- State4& state, const char* pathStr);
+extern bool testSimplify(SkPath& path, bool useXor, SkPath& out, PathOpsThreadState& state,
+ const char* pathStr);
extern bool testSimplify(skiatest::Reporter* reporter, const SkPath& path);
-struct State4 {
- State4();
-#if HARD_CODE_PTHREAD
- static pthread_mutex_t addQueue;
- static pthread_cond_t checkQueue;
- pthread_cond_t initialized;
- pthread_t threadID;
-#else
- SkThread* thread;
-#endif
- static State4* queue;
- int index;
- bool done;
- bool last;
- int a;
- int b;
- int c;
- int d; // sometimes 1 if abc_is_a_triangle
- int testsRun;
- char filename[256];
- skiatest::Reporter* reporter;
- SkBitmap bitmap;
- mutable SkDynamicMemoryWStream ramStream;
-};
+int initializeTests(const char* testName);
+void outputProgress(char* ramStr, const char* pathStr, SkPath::FillType );
+void outputProgress(char* ramStr, const char* pathStr, SkPathOp op);
-void createThread(State4* statePtr, void* (*test)(void* ));
-int dispatchTest4(ThreadFunction testFun, int a, int b, int c, int d);
-void initializeTests(skiatest::Reporter* reporter, const char* testName, size_t testNameSize);
-void outputProgress(const State4& state, const char* pathStr, SkPath::FillType );
-void outputProgress(const State4& state, const char* pathStr, SkPathOp op);
-void outputToStream(const State4& state, const char* pathStr, const char* pathPrefix,
- const char* nameSuffix,
- const char* testFunction, SkWStream& outFile);
-bool runNextTestSet(State4& state);
-int waitForCompletion();
-
void RunTestSet(skiatest::Reporter* reporter, TestDesc tests[], size_t count,
void (*firstTest)(skiatest::Reporter* ),
void (*stopTest)(skiatest::Reporter* ), bool reverse);
« no previous file with comments | « tests/PathOpsCubicIntersectionTestData.cpp ('k') | tests/PathOpsExtendedTest.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698