#include "EGLWindow.h"
#include "OSWindow.h"
-OSWindow *ANGLETest::mOSWindow = NULL;
-
-ANGLETest::ANGLETest()
- : mEGLWindow(NULL)
+ANGLETest::ANGLETest(EGLint glesMajorVersion, EGLint requestedRenderer)
+ : mEGLWindow(NULL),
+ mOSWindow(NULL)
{
- mEGLWindow = new EGLWindow(1280, 720, 2, EGL_PLATFORM_ANGLE_TYPE_D3D11_ANGLE);
+ mEGLWindow = new EGLWindow(1280, 720, glesMajorVersion, requestedRenderer);
}
void ANGLETest::SetUp()
{
- ResizeWindow(mEGLWindow->getWidth(), mEGLWindow->getHeight());
+ if (!initTestWindow())
+ {
+ FAIL() << "Failed to create ANGLE test window.";
+ }
+
+ if (!resizeWindow(mEGLWindow->getWidth(), mEGLWindow->getHeight()))
+ {
+ FAIL() << "Failed to resize ANGLE test window.";
+ }
+
if (!createEGLContext())
{
FAIL() << "egl context creation failed.";
exit(0);
}
}
+
+ if (!destroyTestWindow())
+ {
+ FAIL() << "ANGLE test window destruction failed.";
+ }
}
void ANGLETest::swapBuffers()
glGetShaderiv(shader, GL_INFO_LOG_LENGTH, &infoLogLength);
std::vector<GLchar> infoLog(infoLogLength);
- glGetShaderInfoLog(shader, infoLog.size(), NULL, infoLog.data());
+ glGetShaderInfoLog(shader, infoLog.size(), NULL, &infoLog[0]);
- std::cerr << "shader compilation failed: " << infoLog.data();
+ std::cerr << "shader compilation failed: " << &infoLog[0];
glDeleteShader(shader);
shader = 0;
return strstr(extString, extName.c_str()) != NULL;
}
-void ANGLETest::setClientVersion(int clientVersion)
-{
- mEGLWindow->setClientVersion(clientVersion);
-}
-
void ANGLETest::setWindowWidth(int width)
{
mEGLWindow->setWidth(width);
return true;
}
-bool ANGLETest::InitTestWindow()
+bool ANGLETest::initTestWindow()
{
mOSWindow = CreateOSWindow();
if (!mOSWindow->initialize("ANGLE_TEST", 128, 128))
return false;
}
- mOSWindow->setVisible(true);
+ mOSWindow->setVisible(false);
return true;
}
-bool ANGLETest::DestroyTestWindow()
+bool ANGLETest::destroyTestWindow()
{
if (mOSWindow)
{
return true;
}
-bool ANGLETest::ResizeWindow(int width, int height)
+bool ANGLETest::resizeWindow(int width, int height)
{
return mOSWindow->resize(width, height);
}
-void ANGLETestEnvironment::SetUp()
-{
- if (!ANGLETest::InitTestWindow())
- {
- FAIL() << "Failed to create ANGLE test window.";
- }
-}
-
-void ANGLETestEnvironment::TearDown()
+void ANGLETest::setWindowVisible(bool isVisible)
{
- ANGLETest::DestroyTestWindow();
+ mOSWindow->setVisible(isVisible);
}