New series of tests for gfxterm and gfxmenu.
This commit is contained in:
parent
7391c4d5ac
commit
c104b6f93e
10 changed files with 426 additions and 300 deletions
|
@ -26,292 +26,23 @@
|
|||
|
||||
GRUB_MOD_LICENSE ("GPLv3+");
|
||||
|
||||
struct
|
||||
{
|
||||
struct grub_video_mode_info mode_info;
|
||||
} tests[] = {
|
||||
{
|
||||
.mode_info = {
|
||||
.width = 640,
|
||||
.height = 480,
|
||||
.pitch = 640,
|
||||
.mode_type = GRUB_VIDEO_MODE_TYPE_INDEX_COLOR,
|
||||
.bpp = 8,
|
||||
.bytes_per_pixel = 1,
|
||||
.number_of_colors = GRUB_VIDEO_FBSTD_NUMCOLORS
|
||||
},
|
||||
},
|
||||
{
|
||||
.mode_info = {
|
||||
.width = 800,
|
||||
.height = 600,
|
||||
.pitch = 800,
|
||||
.mode_type = GRUB_VIDEO_MODE_TYPE_INDEX_COLOR,
|
||||
.bpp = 8,
|
||||
.bytes_per_pixel = 1,
|
||||
.number_of_colors = GRUB_VIDEO_FBSTD_NUMCOLORS
|
||||
},
|
||||
},
|
||||
{
|
||||
.mode_info = {
|
||||
.width = 1024,
|
||||
.height = 768,
|
||||
.pitch = 1024,
|
||||
.mode_type = GRUB_VIDEO_MODE_TYPE_INDEX_COLOR,
|
||||
.bpp = 8,
|
||||
.bytes_per_pixel = 1,
|
||||
.number_of_colors = GRUB_VIDEO_FBSTD_NUMCOLORS
|
||||
},
|
||||
},
|
||||
|
||||
|
||||
{
|
||||
.mode_info = {
|
||||
.width = 640,
|
||||
.height = 480,
|
||||
.pitch = 640,
|
||||
.mode_type = GRUB_VIDEO_MODE_TYPE_INDEX_COLOR,
|
||||
.bpp = 8,
|
||||
.bytes_per_pixel = 1,
|
||||
.number_of_colors = GRUB_VIDEO_FBSTD_EXT_NUMCOLORS
|
||||
},
|
||||
},
|
||||
{
|
||||
.mode_info = {
|
||||
.width = 800,
|
||||
.height = 600,
|
||||
.pitch = 800,
|
||||
.mode_type = GRUB_VIDEO_MODE_TYPE_INDEX_COLOR,
|
||||
.bpp = 8,
|
||||
.bytes_per_pixel = 1,
|
||||
.number_of_colors = GRUB_VIDEO_FBSTD_EXT_NUMCOLORS
|
||||
},
|
||||
},
|
||||
{
|
||||
.mode_info = {
|
||||
.width = 1024,
|
||||
.height = 768,
|
||||
.pitch = 1024,
|
||||
.mode_type = GRUB_VIDEO_MODE_TYPE_INDEX_COLOR,
|
||||
.bpp = 8,
|
||||
.bytes_per_pixel = 1,
|
||||
.number_of_colors = GRUB_VIDEO_FBSTD_EXT_NUMCOLORS
|
||||
},
|
||||
},
|
||||
|
||||
{
|
||||
.mode_info = {
|
||||
.width = 640,
|
||||
.height = 480,
|
||||
.pitch = 1280,
|
||||
GRUB_VIDEO_MI_RGB555 ()
|
||||
},
|
||||
},
|
||||
{
|
||||
.mode_info = {
|
||||
.width = 800,
|
||||
.height = 600,
|
||||
.pitch = 1600,
|
||||
GRUB_VIDEO_MI_RGB555 ()
|
||||
},
|
||||
},
|
||||
{
|
||||
.mode_info = {
|
||||
.width = 1024,
|
||||
.height = 768,
|
||||
.pitch = 2048,
|
||||
GRUB_VIDEO_MI_RGB555 ()
|
||||
},
|
||||
},
|
||||
{
|
||||
.mode_info = {
|
||||
.width = 640,
|
||||
.height = 480,
|
||||
.pitch = 1280,
|
||||
GRUB_VIDEO_MI_RGB565 ()
|
||||
},
|
||||
},
|
||||
{
|
||||
.mode_info = {
|
||||
.width = 800,
|
||||
.height = 600,
|
||||
.pitch = 1600,
|
||||
GRUB_VIDEO_MI_RGB565 ()
|
||||
},
|
||||
},
|
||||
{
|
||||
.mode_info = {
|
||||
.width = 1024,
|
||||
.height = 768,
|
||||
.pitch = 2048,
|
||||
GRUB_VIDEO_MI_RGB565 ()
|
||||
},
|
||||
},
|
||||
{
|
||||
.mode_info = {
|
||||
.width = 640,
|
||||
.height = 480,
|
||||
.pitch = 640 * 3,
|
||||
GRUB_VIDEO_MI_RGB888 ()
|
||||
},
|
||||
},
|
||||
{
|
||||
.mode_info = {
|
||||
.width = 800,
|
||||
.height = 600,
|
||||
.pitch = 800 * 3,
|
||||
GRUB_VIDEO_MI_RGB888 ()
|
||||
},
|
||||
},
|
||||
{
|
||||
.mode_info = {
|
||||
.width = 1024,
|
||||
.height = 768,
|
||||
.pitch = 1024 * 3,
|
||||
GRUB_VIDEO_MI_RGB888 ()
|
||||
},
|
||||
},
|
||||
{
|
||||
.mode_info = {
|
||||
.width = 640,
|
||||
.height = 480,
|
||||
.pitch = 640 * 4,
|
||||
GRUB_VIDEO_MI_RGBA8888()
|
||||
},
|
||||
},
|
||||
{
|
||||
.mode_info = {
|
||||
.width = 800,
|
||||
.height = 600,
|
||||
.pitch = 800 * 4,
|
||||
GRUB_VIDEO_MI_RGBA8888()
|
||||
},
|
||||
},
|
||||
{
|
||||
.mode_info = {
|
||||
.width = 1024,
|
||||
.height = 768,
|
||||
.pitch = 1024 * 4,
|
||||
GRUB_VIDEO_MI_RGBA8888()
|
||||
},
|
||||
},
|
||||
|
||||
{
|
||||
.mode_info = {
|
||||
.width = 640,
|
||||
.height = 480,
|
||||
.pitch = 1280,
|
||||
GRUB_VIDEO_MI_BGR555 ()
|
||||
},
|
||||
},
|
||||
{
|
||||
.mode_info = {
|
||||
.width = 800,
|
||||
.height = 600,
|
||||
.pitch = 1600,
|
||||
GRUB_VIDEO_MI_BGR555 ()
|
||||
},
|
||||
},
|
||||
{
|
||||
.mode_info = {
|
||||
.width = 1024,
|
||||
.height = 768,
|
||||
.pitch = 2048,
|
||||
GRUB_VIDEO_MI_BGR555 ()
|
||||
},
|
||||
},
|
||||
{
|
||||
.mode_info = {
|
||||
.width = 640,
|
||||
.height = 480,
|
||||
.pitch = 1280,
|
||||
GRUB_VIDEO_MI_BGR565 ()
|
||||
},
|
||||
},
|
||||
{
|
||||
.mode_info = {
|
||||
.width = 800,
|
||||
.height = 600,
|
||||
.pitch = 1600,
|
||||
GRUB_VIDEO_MI_BGR565 ()
|
||||
},
|
||||
},
|
||||
{
|
||||
.mode_info = {
|
||||
.width = 1024,
|
||||
.height = 768,
|
||||
.pitch = 2048,
|
||||
GRUB_VIDEO_MI_BGR565 ()
|
||||
},
|
||||
},
|
||||
{
|
||||
.mode_info = {
|
||||
.width = 640,
|
||||
.height = 480,
|
||||
.pitch = 640 * 3,
|
||||
GRUB_VIDEO_MI_BGR888 ()
|
||||
},
|
||||
},
|
||||
{
|
||||
.mode_info = {
|
||||
.width = 800,
|
||||
.height = 600,
|
||||
.pitch = 800 * 3,
|
||||
GRUB_VIDEO_MI_BGR888 ()
|
||||
},
|
||||
},
|
||||
{
|
||||
.mode_info = {
|
||||
.width = 1024,
|
||||
.height = 768,
|
||||
.pitch = 1024 * 3,
|
||||
GRUB_VIDEO_MI_BGR888 ()
|
||||
},
|
||||
},
|
||||
{
|
||||
.mode_info = {
|
||||
.width = 640,
|
||||
.height = 480,
|
||||
.pitch = 640 * 4,
|
||||
GRUB_VIDEO_MI_BGRA8888()
|
||||
},
|
||||
},
|
||||
{
|
||||
.mode_info = {
|
||||
.width = 800,
|
||||
.height = 600,
|
||||
.pitch = 800 * 4,
|
||||
GRUB_VIDEO_MI_BGRA8888()
|
||||
},
|
||||
},
|
||||
{
|
||||
.mode_info = {
|
||||
.width = 1024,
|
||||
.height = 768,
|
||||
.pitch = 1024 * 4,
|
||||
GRUB_VIDEO_MI_BGRA8888()
|
||||
},
|
||||
},
|
||||
|
||||
};
|
||||
|
||||
|
||||
/* Functional test main method. */
|
||||
static void
|
||||
videotest_checksum (void)
|
||||
{
|
||||
unsigned i;
|
||||
|
||||
if (grub_font_load ("unicode") == 0)
|
||||
{
|
||||
grub_test_assert (0, "unicode font not found: %s", grub_errmsg);
|
||||
return;
|
||||
}
|
||||
|
||||
for (i = 0; i < ARRAY_SIZE (tests); i++)
|
||||
|
||||
for (i = 0; i < ARRAY_SIZE (grub_test_video_modes); i++)
|
||||
{
|
||||
grub_video_capture_start (&tests[i].mode_info,
|
||||
grub_video_capture_start (&grub_test_video_modes[i],
|
||||
grub_video_fbstd_colors,
|
||||
tests[i].mode_info.number_of_colors);
|
||||
grub_test_video_modes[i].number_of_colors);
|
||||
grub_terminal_input_fake_sequence ((int []) { '\n' }, 1);
|
||||
|
||||
grub_video_checksum ("videotest");
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue