From 79ff1f886b48e6b43ddd0ad3e3c6155e5826c4c5 Mon Sep 17 00:00:00 2001 From: Daniel Friesel Date: Sun, 13 Mar 2011 13:55:12 +0100 Subject: Add App::Dthumb tests for create_files, create_thumbnail_html and write_out_html --- t/21-app-dthumb.files.t | 83 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 83 insertions(+) create mode 100755 t/21-app-dthumb.files.t (limited to 't/21-app-dthumb.files.t') diff --git a/t/21-app-dthumb.files.t b/t/21-app-dthumb.files.t new file mode 100755 index 0000000..06bea47 --- /dev/null +++ b/t/21-app-dthumb.files.t @@ -0,0 +1,83 @@ +#!/usr/bin/env perl +use strict; +use warnings; +use 5.010; +use autodie; + +use Test::More; + +eval "use File::Slurp"; +plan skip_all => 'File::Slurp required' if $@; + +plan tests => 9; + +use_ok('App::Dthumb'); + +my %conf = ( + file_index => 't/out/index', + dir_images => 't/imgdir', +); +my @create_failed; + +my $dthumb = App::Dthumb->new(%conf); +isa_ok($dthumb, 'App::Dthumb'); + +for my $file (qw(one.png two.png)) { + $dthumb->create_thumbnail_html($file); +} +$dthumb->write_out_html(); + +is(read_file('t/out/index'), read_file('t/cmp/index.names'), + 'create_thumbnail_html / write_out_html'); + +unlink('t/out/index'); + + + +$conf{names} = 0; +$dthumb = App::Dthumb->new(%conf); + +for my $file (qw(one.png two.png)) { + $dthumb->create_thumbnail_html($file); +} +$dthumb->write_out_html(); + +is(read_file('t/out/index'), read_file('t/cmp/index.no-names'), + 'create_thumbnail_html / write_out_html with names = 0'); + +unlink('t/out/index'); + + + +$dthumb = App::Dthumb->new(dir_images => 't/out'); +$dthumb->create_files(); + +ok(-d 't/out/.thumbs', '->create_files creates thumb dir'); +ok(-d 't/out/.dthumb', '->create_files creates data dir'); + +for my $file ($dthumb->{data}->list_archived()) { + if (not -e "t/out/.dthumb/${file}") { + push(@create_failed, $file); + } + else { + unlink("t/out/.dthumb/${file}"); + } +} +rmdir('t/out/.thumbs'); +rmdir('t/out/.dthumb'); + +if (@create_failed) { + fail("->create_files missed out " . join(' ', @create_failed)); +} +else { + pass("->create_files all okay"); +} + + + +$dthumb = App::Dthumb->new(%conf); + +$dthumb->read_directories(); + +is_deeply($dthumb->{old_thumbnails}, ['invalid.png'], '{old_thumbnails}'); +is_deeply($dthumb->{files}, ['one.png', 'two.png'], '{files}'); -- cgit v1.2.3