From f75aea0e0a57a603203e6334fba4936bc5623a74 Mon Sep 17 00:00:00 2001 From: Daniel Friesel Date: Mon, 4 Oct 2010 20:24:34 +0200 Subject: Tests for keyboard based zooming --- test/feh-scr.i | 59 ++++++++++++++++++++++++++++++++++++++++++++---- test/scr/feh_lhi | Bin 0 -> 13552 bytes test/scr/feh_lhi_i | Bin 0 -> 34338 bytes test/scr/feh_lhi_ii | Bin 0 -> 71938 bytes test/scr/feh_lhi_iir | Bin 0 -> 15536 bytes test/scr/feh_lhi_iirr | Bin 0 -> 15431 bytes test/scr/feh_lhi_iirri | Bin 0 -> 64012 bytes test/scr/feh_lhi_iirrio | Bin 0 -> 72552 bytes test/scr/feh_lhi_o | Bin 0 -> 120797 bytes test/scr/feh_lhi_oo | Bin 0 -> 131624 bytes test/scr/feh_lhi_ooo | Bin 0 -> 141170 bytes 11 files changed, 54 insertions(+), 5 deletions(-) create mode 100644 test/scr/feh_lhi create mode 100644 test/scr/feh_lhi_i create mode 100644 test/scr/feh_lhi_ii create mode 100644 test/scr/feh_lhi_iir create mode 100644 test/scr/feh_lhi_iirr create mode 100644 test/scr/feh_lhi_iirri create mode 100644 test/scr/feh_lhi_iirrio create mode 100644 test/scr/feh_lhi_o create mode 100644 test/scr/feh_lhi_oo create mode 100644 test/scr/feh_lhi_ooo (limited to 'test') diff --git a/test/feh-scr.i b/test/feh-scr.i index 05960a2..5067ba7 100755 --- a/test/feh-scr.i +++ b/test/feh-scr.i @@ -6,7 +6,7 @@ use autodie qw/:all/; use Cwd; use GD qw/:DEFAULT :cmp/; -use Test::More tests => 27; +use Test::More tests => 38; use Time::HiRes qw/sleep/; use X11::GUITest qw/:ALL/; @@ -14,6 +14,7 @@ my ($pid_xnest, $pid_twm); my $win; my ($width, $height); my $pwd = getcwd(); +my $test_id = 0; sub waitfor(&) { my ($sub) = @_; @@ -62,6 +63,10 @@ sub same_files { my $img_one = GD::Image->new($one); my $img_two = GD::Image->new($two); + if (not defined $img_one or not defined $img_two) { + return 0; + } + return( ! ($img_one->compare($img_two) & GD_CMP_IMAGE)); } @@ -75,11 +80,17 @@ sub check_scr { sub test_scr { my ($file) = @_; + my $msg = "X root window is test/scr/${file}"; + + $test_id++; - ok( - waitfor { check_scr($file) }, - "X root window is test/scr/${file}", - ); + if (waitfor { check_scr($file) }) { + pass($msg); + } + else { + fail($msg); + rename("/tmp/feh_${$}.png", "/tmp/feh_${$}_${test_id}_${file}.png"); + } } if (FindWindowLike(qr{^feh})) { @@ -216,6 +227,44 @@ test_scr('draw_nothing'); feh_stop(); +feh_start(q{}, 'test/bg/large/h/in'); +test_scr('feh_lhi'); + +SendKeys('{UP}'); +test_scr('feh_lhi_i'); + +SendKeys('{UP}'); +test_scr('feh_lhi_ii'); + +SendKeys('^({RIG})'); +test_scr('feh_lhi_iir'); + +SendKeys('^({RIG})'); +test_scr('feh_lhi_iirr'); + +SendKeys('{UP}'); +test_scr('feh_lhi_iirri'); + +SendKeys('{DOW}'); +test_scr('feh_lhi_iirrio'); + +feh_stop(); + +feh_start(q{}, 'test/bg/large/h/in'); +test_scr('feh_lhi'); + +SendKeys('{DOW}'); +test_scr('feh_lhi_o'); + +SendKeys('{DOW}'); +test_scr('feh_lhi_oo'); + +SendKeys('{DOW}'); +test_scr('feh_lhi_ooo'); + +feh_stop(); + + unlink('test/bg/exact/.tc/in.txt'); rmdir('test/bg/exact/.tc'); unlink("/tmp/feh_${$}.png"); diff --git a/test/scr/feh_lhi b/test/scr/feh_lhi new file mode 100644 index 0000000..f16d150 Binary files /dev/null and b/test/scr/feh_lhi differ diff --git a/test/scr/feh_lhi_i b/test/scr/feh_lhi_i new file mode 100644 index 0000000..108dfb6 Binary files /dev/null and b/test/scr/feh_lhi_i differ diff --git a/test/scr/feh_lhi_ii b/test/scr/feh_lhi_ii new file mode 100644 index 0000000..1fb695f Binary files /dev/null and b/test/scr/feh_lhi_ii differ diff --git a/test/scr/feh_lhi_iir b/test/scr/feh_lhi_iir new file mode 100644 index 0000000..396ee99 Binary files /dev/null and b/test/scr/feh_lhi_iir differ diff --git a/test/scr/feh_lhi_iirr b/test/scr/feh_lhi_iirr new file mode 100644 index 0000000..81748a3 Binary files /dev/null and b/test/scr/feh_lhi_iirr differ diff --git a/test/scr/feh_lhi_iirri b/test/scr/feh_lhi_iirri new file mode 100644 index 0000000..43b8fa1 Binary files /dev/null and b/test/scr/feh_lhi_iirri differ diff --git a/test/scr/feh_lhi_iirrio b/test/scr/feh_lhi_iirrio new file mode 100644 index 0000000..c9e287b Binary files /dev/null and b/test/scr/feh_lhi_iirrio differ diff --git a/test/scr/feh_lhi_o b/test/scr/feh_lhi_o new file mode 100644 index 0000000..ec48c01 Binary files /dev/null and b/test/scr/feh_lhi_o differ diff --git a/test/scr/feh_lhi_oo b/test/scr/feh_lhi_oo new file mode 100644 index 0000000..784d7d7 Binary files /dev/null and b/test/scr/feh_lhi_oo differ diff --git a/test/scr/feh_lhi_ooo b/test/scr/feh_lhi_ooo new file mode 100644 index 0000000..ad14384 Binary files /dev/null and b/test/scr/feh_lhi_ooo differ -- cgit v1.2.3