Fix issues in pipeline.timestamp.transfer_tests am: 0f672f2a20
[platform/upstream/VK-GL-CTS.git] / modules / egl / teglImageTests.cpp
index 1f48124..fd01af3 100644 (file)
@@ -88,7 +88,7 @@ namespace Image
 {
 
 #define CHECK_EXTENSION(DPY, EXTNAME) \
-       TCU_CHECK_AND_THROW(NotSupportedError, eglu::hasExtension(m_eglTestCtx.getLibrary(), DPY, EXTNAME), (string("Unsupported extension: ") + EXTNAME).c_str())
+       TCU_CHECK_AND_THROW(NotSupportedError, eglu::hasExtension(m_eglTestCtx.getLibrary(), DPY, EXTNAME), (string("Unsupported extension: ") + (EXTNAME)).c_str())
 
 template <typename RetVal>
 RetVal checkCallError (EglTestContext& eglTestCtx, const char* call, RetVal returnValue, EGLint expectError)
@@ -194,6 +194,15 @@ public:
 
        IterateResult iterate (void)
        {
+               const Library& egl = m_eglTestCtx.getLibrary();
+
+               if (eglu::getVersion(egl, m_display) < eglu::Version(1, 5) &&
+                       !eglu::hasExtension(egl, m_display, "EGL_KHR_image") &&
+                       !eglu::hasExtension(egl, m_display, "EGL_KHR_image_base"))
+               {
+                       TCU_THROW(NotSupportedError, "EGLimages not supported");
+               }
+
 #define CHECK_CREATE(MSG, DPY, CONTEXT, SOURCE, ERR) checkCreate(MSG, DPY, #DPY, CONTEXT, #CONTEXT, SOURCE, #SOURCE, ERR)
                CHECK_CREATE("Testing bad display (-1)...", (EGLDisplay)-1, EGL_NO_CONTEXT, EGL_NONE, EGL_BAD_DISPLAY);
                CHECK_CREATE("Testing bad context (-1)...", m_display, (EGLContext)-1, EGL_NONE, EGL_BAD_CONTEXT);
@@ -256,8 +265,8 @@ public:
        }
 
        EGLConfig                                       getConfig               (void) const { return m_config; }
-       EGLDisplay                                      getEglDisplay   (void) const { return m_display; }
-       EGLContext                                      getEglContext   (void) const { return *m_context; }
+       EGLDisplay                                      getEglDisplay   (void) const { return m_display; }
+       EGLContext                                      getEglContext   (void) const { return *m_context; }
        const glw::Functions&           gl                              (void) const { return m_gl; }
 
 private: