aboutsummaryrefslogtreecommitdiffhomepage
path: root/tests/Test.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'tests/Test.cpp')
-rw-r--r--tests/Test.cpp21
1 files changed, 21 insertions, 0 deletions
diff --git a/tests/Test.cpp b/tests/Test.cpp
index e1246c34d6..e8a16f4d50 100644
--- a/tests/Test.cpp
+++ b/tests/Test.cpp
@@ -7,6 +7,10 @@
*/
#include "Test.h"
+#include "GrContext.h"
+#include "SkEGLContext.h"
+#include "SkTLazy.h"
+
using namespace skiatest;
Reporter::Reporter() {
@@ -70,3 +74,20 @@ bool Test::run() {
return fReporter->getCurrSuccess();
}
+///////////////////////////////////////////////////////////////////////////////
+
+
+GrContext* GpuTest::GetContext() {
+ // preserve this order, we want gGrContext destroyed after gEGLContext
+ static SkTLazy<SkEGLContext> gEGLContext;
+ static SkAutoTUnref<GrContext> gGrContext;
+
+ if (NULL == gGrContext.get()) {
+ gEGLContext.init();
+ if (gEGLContext.get()->init(800, 600)) {
+ gGrContext.reset(GrContext::Create(kOpenGL_Shaders_GrEngine, NULL));
+ }
+ }
+ return gGrContext.get();
+}
+