X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=t%2Fcore_video.t;h=dcce70b4d59c7b7f934fc14d56cbe0f2b844c58d;hb=871d7fa3c7848a526b56537ff8e0381fd4dcb460;hp=24a658e21478b5c6f73e5da77f528bef00735684;hpb=f00538b9ce5ee6785496931dbce910271112c961;p=sdlgit%2FSDL_perl.git diff --git a/t/core_video.t b/t/core_video.t index 24a658e..dcce70b 100644 --- a/t/core_video.t +++ b/t/core_video.t @@ -9,7 +9,7 @@ use Data::Dumper; use Test::More; use SDL::Rect; -plan ( tests => 14 ); +plan ( tests => 22 ); use_ok( 'SDL::Video' ); @@ -25,16 +25,24 @@ my @done = update_rects flip set_colors + set_palette + set_gamma + set_gamma_ramp + map_RGB + map_RGBA + unlock_surface + lock_surface /; + can_ok ('SDL::Video', @done); #testing get_video_surface -SDL::Init(SDL_INIT_VIDEO); +SDL::init(SDL_INIT_VIDEO); my $display = SDL::Video::set_video_mode(640,480,32, SDL_SWSURFACE ); if(!$display){ - plan skip_all => 'Couldn\'t set video mode: '. SDL::GetError(); + plan skip_all => 'Couldn\'t set video mode: '. SDL::get_error(); } #diag('Testing SDL::Video'); @@ -69,6 +77,15 @@ is( ($value == 0) || ($value == -1), 1, '[flip] returns 0 or -1' ); $value = SDL::Video::set_colors($display, 0, SDL::Color->new(0,0,0)); is( $value , 0, '[set_colors] returns 0 trying to write to 32 bit display' ); +$value = SDL::Video::set_palette($display, SDL_LOGPAL|SDL_PHYSPAL, 0); + +is( $value , 0, '[set_palette] returns 0 trying to write to 32 bit surface' ); + +my $zero = [0,0,0,0]; +SDL::Video::set_gamma_ramp($zero, $zero, $zero); pass '[set_gamma_ramp] ran'; + +SDL::Video::set_gamma( 1.0, 1.0, 1.0 ); pass '[set_gamma] ran '; + my @b_w_colors; for(my $i=0;$i<256;$i++){ @@ -77,30 +94,35 @@ for(my $i=0;$i<256;$i++){ my $hwdisplay = SDL::Video::set_video_mode(640,480,8, SDL_HWSURFACE ); if(!$hwdisplay){ - plan skip_all => 'Couldn\'t set video mode: '. SDL::GetError(); + plan skip_all => 'Couldn\'t set video mode: '. SDL::get_error(); } $value = SDL::Video::set_colors($hwdisplay, 0); is( $value , 0, '[set_colors] returns 0 trying to send empty colors to 8 bit surface' ); +$value = SDL::Video::set_palette($hwdisplay, SDL_LOGPAL|SDL_PHYSPAL, 0); + +is( $value , 0, '[set_palette] returns 0 trying to send empty colors to 8 bit surface' ); $value = SDL::Video::set_colors($hwdisplay, 0, @b_w_colors); is( $value , 1, '[set_colors] returns '.$value ); +$value = SDL::Video::set_palette($hwdisplay, SDL_LOGPAL|SDL_PHYSPAL, 0, @b_w_colors ); + +is( $value , 1, '[set_palette] returns 1' ); + +$value = SDL::Video::lock_surface($hwdisplay); pass '[lock_surface] ran returned: '.$value; + +SDL::Video::unlock_surface($hwdisplay); pass '[unlock_surface] ran'; + +is( SDL::Video::map_RGB($hwdisplay->format, 10, 10 ,10) > 0, 1, '[map_RGB] maps correctly to 8-bit surface'); +is( SDL::Video::map_RGBA($hwdisplay->format, 10, 10 ,10, 10) > 0, 1, '[map_RGBA] maps correctly to 8-bit surface'); my @left = qw/ - set_palette - set_gamma get_gamma_ramp - set_gmmma_ramp - map_RGB - map_RGBA get_RGB get_RGBA - create_RGB_surface_from - lock_surface - unlock_surface convert_surface display_format display_format_alpha @@ -133,4 +155,4 @@ TODO: diag $why; -pass 'Are we still alive? Checkign for segfaults'; +pass 'Are we still alive? Checking for segfaults';