From 485d0c8c0a58b85c5c80f31627d89e3b5d449ff2 Mon Sep 17 00:00:00 2001 From: Daniel Friesel Date: Sat, 2 Oct 2010 22:51:38 +0200 Subject: Begin work on --bg tests --- test/bg.png | Bin 0 -> 9815 bytes test/bg_451x500.png | Bin 0 -> 9687 bytes test/bg_451x500_center.png | Bin 0 -> 6737 bytes test/bg_451x500_fill.png | Bin 0 -> 15089 bytes test/bg_451x500_max.png | 1 + test/bg_451x500_scale.png | Bin 0 -> 10842 bytes test/bg_451x500_tile.png | Bin 0 -> 6755 bytes test/bg_500x333.png | Bin 0 -> 9135 bytes test/bg_500x333_center.png | Bin 0 -> 6344 bytes test/bg_500x333_fill.png | Bin 0 -> 18419 bytes test/bg_500x333_max.png | 1 + test/bg_500x333_scale.png | Bin 0 -> 11681 bytes test/bg_500x333_tile.png | Bin 0 -> 9170 bytes test/bg_all.png | Bin 0 -> 6525 bytes test/feh-bg.i | 52 +++++++++++++++++++++++++++++++++++++++++++++ test/run-bg | 11 ++++++++++ 16 files changed, 65 insertions(+) create mode 100644 test/bg.png create mode 100644 test/bg_451x500.png create mode 100644 test/bg_451x500_center.png create mode 100644 test/bg_451x500_fill.png create mode 120000 test/bg_451x500_max.png create mode 100644 test/bg_451x500_scale.png create mode 100644 test/bg_451x500_tile.png create mode 100644 test/bg_500x333.png create mode 100644 test/bg_500x333_center.png create mode 100644 test/bg_500x333_fill.png create mode 120000 test/bg_500x333_max.png create mode 100644 test/bg_500x333_scale.png create mode 100644 test/bg_500x333_tile.png create mode 100644 test/bg_all.png create mode 100755 test/feh-bg.i create mode 100755 test/run-bg (limited to 'test') diff --git a/test/bg.png b/test/bg.png new file mode 100644 index 0000000..0c1f09f Binary files /dev/null and b/test/bg.png differ diff --git a/test/bg_451x500.png b/test/bg_451x500.png new file mode 100644 index 0000000..3b64670 Binary files /dev/null and b/test/bg_451x500.png differ diff --git a/test/bg_451x500_center.png b/test/bg_451x500_center.png new file mode 100644 index 0000000..99555af Binary files /dev/null and b/test/bg_451x500_center.png differ diff --git a/test/bg_451x500_fill.png b/test/bg_451x500_fill.png new file mode 100644 index 0000000..18e1da9 Binary files /dev/null and b/test/bg_451x500_fill.png differ diff --git a/test/bg_451x500_max.png b/test/bg_451x500_max.png new file mode 120000 index 0000000..4721827 --- /dev/null +++ b/test/bg_451x500_max.png @@ -0,0 +1 @@ +bg_451x500_center.png \ No newline at end of file diff --git a/test/bg_451x500_scale.png b/test/bg_451x500_scale.png new file mode 100644 index 0000000..fd884f6 Binary files /dev/null and b/test/bg_451x500_scale.png differ diff --git a/test/bg_451x500_tile.png b/test/bg_451x500_tile.png new file mode 100644 index 0000000..1fcc1dd Binary files /dev/null and b/test/bg_451x500_tile.png differ diff --git a/test/bg_500x333.png b/test/bg_500x333.png new file mode 100644 index 0000000..8fad57c Binary files /dev/null and b/test/bg_500x333.png differ diff --git a/test/bg_500x333_center.png b/test/bg_500x333_center.png new file mode 100644 index 0000000..7db9571 Binary files /dev/null and b/test/bg_500x333_center.png differ diff --git a/test/bg_500x333_fill.png b/test/bg_500x333_fill.png new file mode 100644 index 0000000..eeec8ca Binary files /dev/null and b/test/bg_500x333_fill.png differ diff --git a/test/bg_500x333_max.png b/test/bg_500x333_max.png new file mode 120000 index 0000000..13547b7 --- /dev/null +++ b/test/bg_500x333_max.png @@ -0,0 +1 @@ +bg_500x333_center.png \ No newline at end of file diff --git a/test/bg_500x333_scale.png b/test/bg_500x333_scale.png new file mode 100644 index 0000000..fee0647 Binary files /dev/null and b/test/bg_500x333_scale.png differ diff --git a/test/bg_500x333_tile.png b/test/bg_500x333_tile.png new file mode 100644 index 0000000..5c8e1a4 Binary files /dev/null and b/test/bg_500x333_tile.png differ diff --git a/test/bg_all.png b/test/bg_all.png new file mode 100644 index 0000000..5903c34 Binary files /dev/null and b/test/bg_all.png differ diff --git a/test/feh-bg.i b/test/feh-bg.i new file mode 100755 index 0000000..b26feff --- /dev/null +++ b/test/feh-bg.i @@ -0,0 +1,52 @@ +#!/usr/bin/env perl +use strict; +use warnings; +use 5.010; + +use GD qw/:DEFAULT :cmp/; +use Test::More tests => 30; +use Time::HiRes qw/sleep/; + +sub set_bg { + my ($mode, $file) = @_; + + $file //= 'bg.png'; + + ok( + system("feh --bg-${mode} test/${file}") == 0, + "Ran feh --bg-${mode} test/${file}" + ); +} + +sub same_files { + my ($one, $two) = @_; + + my $img_one = GD::Image->new($one); + my $img_two = GD::Image->new($two); + + return( ! ($img_one->compare($img_two) & GD_CMP_IMAGE)); +} + +sub check_bg { + my ($file) = @_; + + system("import -silent -window root /tmp/feh_${$}.png"); + + ok( + same_files("test/${file}", "/tmp/feh_${$}.png"), + "Wallpaper is test/${file}" + ); +} + +for my $mode (qw( center fill max scale tile )) { + set_bg($mode); + check_bg('bg_all.png'); + + set_bg($mode, 'bg_500x333.png'); + check_bg("bg_500x333_${mode}.png"); + + set_bg($mode, 'bg_451x500.png'); + check_bg("bg_451x500_${mode}.png"); +} + +unlink("/tmp/feh_${$}.png"); diff --git a/test/run-bg b/test/run-bg new file mode 100755 index 0000000..df5d6ac --- /dev/null +++ b/test/run-bg @@ -0,0 +1,11 @@ +#!/bin/sh + +Xnest -geometry 500x500 :7 > /dev/null 2>&1 & +pid=${!} + +# Wallpaper setting requires a window manager to work reliably +DISPLAY=:7 twm > /dev/null 2>&1 & + +DISPLAY=:7 prove -v test/feh-bg.i + +kill ${pid} -- cgit v1.2.3