Browse Source

Added more 8-bit blit test coverage

Sam Lantinga 9 tháng trước cách đây
mục cha
commit
4830fc4e40
1 tập tin đã thay đổi với 26 bổ sung0 xóa
  1. 26 0
      test/testautomation_surface.c

+ 26 - 0
test/testautomation_surface.c

@@ -1139,6 +1139,18 @@ static int surface_testPalette(void *arg)
     SDL_BlitSurface(source, NULL, surface, NULL);
     SDLTest_AssertCheck(*pixels == 1, "Expected *pixels == 1 got %u", *pixels);
 
+    /* Identity copy between indexed surfaces where the source has a palette */
+    palette->colors[0].r = 0;
+    palette->colors[0].g = 0;
+    palette->colors[0].b = 0;
+    palette->colors[1].r = 0xFF;
+    palette->colors[1].g = 0;
+    palette->colors[1].b = 0;
+    SDL_SetSurfacePalette(source, palette);
+    *pixels = 0;
+    SDL_BlitSurface(source, NULL, surface, NULL);
+    SDLTest_AssertCheck(*pixels == 1, "Expected *pixels == 1 got %u", *pixels);
+
     /* Identity copy between indexed surfaces where the destination has a palette */
     palette->colors[0].r = 0;
     palette->colors[0].g = 0;
@@ -1146,6 +1158,20 @@ static int surface_testPalette(void *arg)
     palette->colors[1].r = 0xFF;
     palette->colors[1].g = 0;
     palette->colors[1].b = 0;
+    SDL_SetSurfacePalette(source, NULL);
+    SDL_SetSurfacePalette(surface, palette);
+    *pixels = 0;
+    SDL_BlitSurface(source, NULL, surface, NULL);
+    SDLTest_AssertCheck(*pixels == 1, "Expected *pixels == 1 got %u", *pixels);
+
+    /* Identity copy between indexed surfaces where the source and destination share a palette */
+    palette->colors[0].r = 0;
+    palette->colors[0].g = 0;
+    palette->colors[0].b = 0;
+    palette->colors[1].r = 0xFF;
+    palette->colors[1].g = 0;
+    palette->colors[1].b = 0;
+    SDL_SetSurfacePalette(source, palette);
     SDL_SetSurfacePalette(surface, palette);
     *pixels = 0;
     SDL_BlitSurface(source, NULL, surface, NULL);