aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlon Zakai <alonzakai@gmail.com>2013-12-16 16:57:18 -0800
committerAlon Zakai <alonzakai@gmail.com>2013-12-16 17:45:47 -0800
commit328f383f7c8b97b94d9a50e6adf68981036f0a30 (patch)
tree9aef0c37ff3191655f20ba28d8203e73c98c051c
parent4fb00853a9998374666c85d89c350782b9e45250 (diff)
add test file for tutorial
-rw-r--r--tests/hello_image_sdl.c43
1 files changed, 43 insertions, 0 deletions
diff --git a/tests/hello_image_sdl.c b/tests/hello_image_sdl.c
new file mode 100644
index 00000000..449798bd
--- /dev/null
+++ b/tests/hello_image_sdl.c
@@ -0,0 +1,43 @@
+#include <stdio.h>
+#include <SDL/SDL.h>
+#include <SDL/SDL_image.h>
+#include <assert.h>
+#include <emscripten.h>
+#include <unistd.h>
+
+int testImage(SDL_Surface* screen, const char* fileName) {
+ SDL_Surface *image = IMG_Load(fileName);
+ if (!image)
+ {
+ printf("IMG_Load: %s\n", IMG_GetError());
+ return 0;
+ }
+ assert(image->format->BitsPerPixel == 32);
+ assert(image->format->BytesPerPixel == 4);
+ assert(image->pitch == 4*image->w);
+ int result = image->w;
+
+ SDL_BlitSurface (image, NULL, screen, NULL);
+ SDL_FreeSurface (image);
+
+ return result;
+}
+
+int main() {
+ SDL_Init(SDL_INIT_VIDEO);
+ SDL_Surface *screen = SDL_SetVideoMode(600, 450, 32, SDL_SWSURFACE);
+
+ int result = 0;
+
+ result |= testImage(screen, "screenshot.jpg"); // absolute path
+ assert(result != 0);
+
+ SDL_Flip(screen);
+
+ printf("you should see an image.\n");
+
+ SDL_Quit();
+
+ return 0;
+}
+