blob: 040bfb27f30b3f23fa7907b8c28942483aa3467e [file] [log] [blame]
/*
* Copyright 2019 The Emscripten Authors. All rights reserved.
* Emscripten is available under two separate licenses, the MIT license and the
* University of Illinois/NCSA Open Source License. Both these licenses can be
* found in the LICENSE file.
*/
#include <stdio.h>
#include <EGL/egl.h>
#include <emscripten.h>
int result = 1; // Success
#define assert(x) do { \
if (!(x)) { \
result = 0; \
printf("Assertion failure: %s in %s:%d!\n", #x, __FILE__, __LINE__); \
} \
} while(0)
int main(int argc, char *argv[]) {
EM_ASM({
Module['canvas'] = document.createElement('canvas');
Module['canvas'].getContext = function() {
return null;
};
});
EGLDisplay display = eglGetDisplay(EGL_DEFAULT_DISPLAY);
assert(display != NULL);
assert(eglInitialize(display, NULL, NULL));
EGLConfig config;
EGLint count;
assert(eglChooseConfig(display, NULL, &config, 1, &count));
assert(count == 1);
EGLint attribs[] = { EGL_CONTEXT_CLIENT_VERSION, 2, EGL_NONE };
assert(eglCreateContext(display, config, NULL, attribs) == NULL);
assert(eglGetError() == EGL_BAD_MATCH);
#ifdef REPORT_RESULT
REPORT_RESULT(result);
#endif
}