Mercurial > sdl-ios-xcode
diff test/automated/render/render.c @ 3731:f5ddf1b670f0 gsoc2009_unit_tests
Converted another testcase to the render system.
author | Edgar Simo <bobbens@gmail.com> |
---|---|
date | Wed, 15 Jul 2009 08:50:24 +0000 |
parents | dafd796f0c95 |
children | ca544951b504 |
line wrap: on
line diff
--- a/test/automated/render/render.c Sun Jul 12 12:05:28 2009 +0000 +++ b/test/automated/render/render.c Wed Jul 15 08:50:24 2009 +0000 @@ -19,6 +19,10 @@ #include "common/images.h" +#define SCREEN_W 80 +#define SCREEN_H 60 + + /* * Prototypes. */ @@ -171,7 +175,6 @@ if (render_compare( "Primitives output not the same.", &img_primitives )) return; } -#if 0 /** @@ -183,77 +186,107 @@ int i, j; SDL_Rect rect; - SDL_ATbegin( "Primitives Blend Test" ); - /* Clear surface. */ - ret = SDL_FillRect( testsur, NULL, - SDL_MapRGB( testsur->format, 0, 0, 0 ) ); - if (SDL_ATassert( "SDL_FillRect", ret == 0)) + if (render_clearScreen()) return; /* Create some rectangles for each blend mode. */ - ret = SDL_BlendRect( testsur, NULL, SDL_BLENDMODE_NONE, 255, 255, 255, 0 ); - if (SDL_ATassert( "SDL_BlendRect", ret == 0)) + ret = SDL_SetRenderDrawColor( 255, 255, 255, 0 ); + if (SDL_ATassert( "SDL_SetRenderDrawColor", ret == 0)) + return; + ret = SDL_SetRenderDrawBlendMode( SDL_BLENDMODE_NONE ); + if (SDL_ATassert( "SDL_SetSurfaceBlendMode", ret == 0)) + return; + ret = SDL_RenderFill( NULL ); + if (SDL_ATassert( "SDL_RenderFill", ret == 0)) return; rect.x = 10; rect.y = 25; rect.w = 40; rect.h = 25; - ret = SDL_BlendRect( testsur, &rect, SDL_BLENDMODE_ADD, 240, 10, 10, 75 ); - if (SDL_ATassert( "SDL_BlendRect", ret == 0)) + ret = SDL_SetRenderDrawColor( 240, 10, 10, 75 ); + if (SDL_ATassert( "SDL_SetRenderDrawColor", ret == 0)) + return; + ret = SDL_SetRenderDrawBlendMode( SDL_BLENDMODE_ADD ); + if (SDL_ATassert( "SDL_SetSurfaceBlendMode", ret == 0)) + return; + ret = SDL_RenderFill( &rect ); + if (SDL_ATassert( "SDL_RenderFill", ret == 0)) return; rect.x = 30; rect.y = 40; rect.w = 45; rect.h = 15; - ret = SDL_BlendRect( testsur, &rect, SDL_BLENDMODE_BLEND, 10, 240, 10, 100 ); - if (SDL_ATassert( "SDL_BlendRect", ret == 0)) + ret = SDL_SetRenderDrawColor( 10, 240, 10, 100 ); + if (SDL_ATassert( "SDL_SetRenderDrawColor", ret == 0)) + return; + ret = SDL_SetRenderDrawBlendMode( SDL_BLENDMODE_BLEND ); + if (SDL_ATassert( "SDL_SetSurfaceBlendMode", ret == 0)) + return; + ret = SDL_RenderFill( &rect ); + if (SDL_ATassert( "SDL_RenderFill", ret == 0)) return; rect.x = 25; rect.y = 25; rect.w = 25; rect.h = 25; - ret = SDL_BlendRect( testsur, &rect, SDL_BLENDMODE_MOD, 10, 10, 240, 125 ); - if (SDL_ATassert( "SDL_BlendRect", ret == 0)) + ret = SDL_SetRenderDrawColor( 10, 10, 240, 125 ); + if (SDL_ATassert( "SDL_SetRenderDrawColor", ret == 0)) + return; + ret = SDL_SetRenderDrawBlendMode( SDL_BLENDMODE_MOD ); + if (SDL_ATassert( "SDL_SetSurfaceBlendMode", ret == 0)) + return; + ret = SDL_RenderFill( &rect ); + if (SDL_ATassert( "SDL_RenderFill", ret == 0)) return; /* Draw blended lines, lines for everyone. */ - for (i=0; i<testsur->w; i+=2) { - ret = SDL_BlendLine( testsur, 0, 0, i, 59, - (((i/2)%3)==0) ? SDL_BLENDMODE_BLEND : - (((i/2)%3)==1) ? SDL_BLENDMODE_ADD : SDL_BLENDMODE_MOD, - 60+2*i, 240-2*i, 50, 3*i ); - if (SDL_ATassert( "SDL_BlendLine", ret == 0)) + for (i=0; i<SCREEN_W; i+=2) { + ret = SDL_SetRenderDrawColor( 60+2*i, 240-2*i, 50, 3*i ); + if (SDL_ATassert( "SDL_SetRenderDrawColor", ret == 0)) + return; + ret = SDL_SetRenderDrawBlendMode((((i/2)%3)==0) ? SDL_BLENDMODE_BLEND : + (((i/2)%3)==1) ? SDL_BLENDMODE_ADD : SDL_BLENDMODE_MOD ); + if (SDL_ATassert( "SDL_SetSurfaceBlendMode", ret == 0)) + return; + ret = SDL_RenderLine( 0, 0, i, 59 ); + if (SDL_ATassert( "SDL_RenderLine", ret == 0)) return; } - for (i=0; i<testsur->h; i+=2) { - ret = SDL_BlendLine( testsur, 0, 0, 79, i, - (((i/2)%3)==0) ? SDL_BLENDMODE_BLEND : - (((i/2)%3)==1) ? SDL_BLENDMODE_ADD : SDL_BLENDMODE_MOD, - 60+2*i, 240-2*i, 50, 3*i ); - if (SDL_ATassert( "SDL_BlendLine", ret == 0)) + for (i=0; i<SCREEN_H; i+=2) { + ret = SDL_SetRenderDrawColor( 60+2*i, 240-2*i, 50, 3*i ); + if (SDL_ATassert( "SDL_SetRenderDrawColor", ret == 0)) + return; + ret = SDL_SetRenderDrawBlendMode((((i/2)%3)==0) ? SDL_BLENDMODE_BLEND : + (((i/2)%3)==1) ? SDL_BLENDMODE_ADD : SDL_BLENDMODE_MOD ); + if (SDL_ATassert( "SDL_SetSurfaceBlendMode", ret == 0)) + return; + ret = SDL_RenderLine( 0, 0, 79, i ); + if (SDL_ATassert( "SDL_RenderLine", ret == 0)) return; } /* Draw points. */ - for (j=0; j<testsur->h; j+=3) { - for (i=0; i<testsur->w; i+=3) { - ret = SDL_BlendPoint( testsur, i, j, - ((((i+j)/3)%3)==0) ? SDL_BLENDMODE_BLEND : - ((((i+j)/3)%3)==1) ? SDL_BLENDMODE_ADD : SDL_BLENDMODE_MOD, - j*4, i*3, j*4, i*3 ); - if (SDL_ATassert( "SDL_BlendPoint", ret == 0)) - return; + for (j=0; j<SCREEN_H; j+=3) { + for (i=0; i<SCREEN_W; i+=3) { + ret = SDL_SetRenderDrawColor( j*4, i*3, j*4, i*3 ); + if (SDL_ATassert( "SDL_SetRenderDrawColor", ret == 0)) + return; + ret = SDL_SetRenderDrawBlendMode( ((((i+j)/3)%3)==0) ? SDL_BLENDMODE_BLEND : + ((((i+j)/3)%3)==1) ? SDL_BLENDMODE_ADD : SDL_BLENDMODE_MOD ); + if (SDL_ATassert( "SDL_SetSurfaceBlendMode", ret == 0)) + return; + ret = SDL_RenderPoint( i, j ); + if (SDL_ATassert( "SDL_RenderPoint", ret == 0)) + return; } } /* See if it's the same. */ - if (SDL_ATassert( "Primitives output not the same.", - render_compare( testsur, &img_blend )==0 )) + if (render_compare( "Blended primitives output not the same.", &img_primitives )) return; - - SDL_ATend(); } +#if 0 /**