diff options
| -rwxr-xr-x | test/feh.i | 30 | 
1 files changed, 29 insertions, 1 deletions
| @@ -3,7 +3,7 @@ use strict;  use warnings;  use 5.010; -use Test::More tests => 52; +use Test::More tests => 55;  use Time::HiRes qw/sleep/;  use X11::GUITest qw/:ALL/; @@ -78,6 +78,16 @@ sub test_win_title {  	}  } +sub slurp { +	my ($file) = @_; +	my $ret; +	local $/ = undef; +	open(my $fh, '<', $file) or die("Can't open $file: $!"); +	$ret = <$fh>; +	close($fh) or die("Can't close $file: $!"); +	return($ret); +} +  if (FindWindowLike(qr{^feh})) {  	BAIL_OUT('It appears you have an open feh window. Please close it.');  } @@ -231,3 +241,21 @@ test_win_title($win, 'feh [3 of 3] - test/ok.jpg');  SendKeys('{RIG}');  test_win_title($win, 'feh [1 of 3] - test/ok.png');  feh_stop(); + +feh_start('--caption-path .captions', 'test/ok.png'); +SendKeys('cFoo Bar Quux Moep~'); +feh_stop(); +ok(-d 'test/.captions', 'autocreated captions directory'); +is(slurp('test/.captions/ok.png.txt'), 'Foo Bar Quux Moep', +	'Correct caption saved'); + +feh_start('--caption-path .captions', 'test/ok.png'); +SendKeys('c'); +SendKeys('{BKS}' x length('Foo Bar Quux Moep')); +SendKeys('Foo Bar^(~)miep~'); +feh_stop(); +is(slurp('test/.captions/ok.png.txt'), "Foo Bar\nmiep", +	'Caption with newline + correct backspace'); + +unlink('test/.captions/ok.png.txt'); +rmdir('test/.captions'); | 
