X-Git-Url: http://wagnertech.de/gitweb/gitweb.cgi/mfinanz.git/blobdiff_plain/c0b530184e94d6c61ea15b3c75bd66f51fe958eb..a7a1c5178d3219abff3a85d94504ef01e536d101:/t/file/filesystem.t?ds=sidebyside diff --git a/t/file/filesystem.t b/t/file/filesystem.t index aa19ac714..8797a1cda 100644 --- a/t/file/filesystem.t +++ b/t/file/filesystem.t @@ -1,5 +1,5 @@ use strict; -use Test::More tests => 11; +use Test::More tests => 14; use lib 't'; @@ -7,7 +7,8 @@ use File::Temp; use Support::TestSetup; use Test::Exception; use SL::File; -use SL::Dev::File; +use SL::Dev::File qw(create_uploaded create_scanned create_created); + Support::TestSetup::login(); @@ -15,22 +16,22 @@ my $temp_dir = File::Temp::tempdir("kivi-t-file-filesystem.XXXXXX", TMPDIR => my $storage_dir = "$temp_dir/storage"; mkdir($storage_dir) || die $!; - -my $db = SL::DB::Object->new->db; -$db->dbh->do("UPDATE defaults SET doc_files = 't'"); -$db->dbh->do("UPDATE defaults SET doc_files_rootpath = ?", undef, $storage_dir); +{ +local $::lx_office_conf{paths}->{document_path} = $storage_dir; +$::instance_conf->data; +local $::instance_conf->{data}{doc_files} = 1; my $scannerfile = "${temp_dir}/f2"; clear_up(); reset_state(); -my $file1 = SL::Dev::File::create_uploaded( file_name => 'file1', file_contents => 'inhalt1 uploaded' ); -my $file2 = SL::Dev::File::create_scanned( file_name => 'file2', file_contents => 'inhalt2 scanned', file_path => $scannerfile ); -my $file3 = SL::Dev::File::create_created( file_name => 'file3', file_contents => 'inhalt3 created' ); -my $file4 = SL::Dev::File::create_created( file_name => 'file3', file_contents => 'inhalt3 new version'); +my $file1 = create_uploaded( file_name => 'file1', file_contents => 'inhalt1 uploaded' ); +my $file2 = create_scanned( file_name => 'file2', file_contents => 'inhalt2 scanned', file_path => $scannerfile ); +my $file3 = create_created( file_name => 'file3', file_contents => 'inhalt3 created' ); +my $file4 = create_created( file_name => 'file3', file_contents => 'inhalt3 new version'); -is( SL::Dev::File->get_all_count(), 3,"total number of files created is 3"); +is( SL::Dev::File::get_all_count(), 3,"total number of files created is 3"); ok( $file1->file_name eq 'file1' ,"file has right name"); my $content1 = $file1->get_content; ok( $$content1 eq 'inhalt1 uploaded' ,"file has right content"); @@ -42,43 +43,65 @@ is( -f $scannerfile ? 1 : 0, 1,"scanned document is mo my $content2 = File::Slurp::read_file($scannerfile); ok( $content2 eq 'inhalt2 scanned' ,"scanned file has right content"); -my @file5 = SL::Dev::File->get_all(file_name => 'file3'); +my @file5 = SL::Dev::File::get_all(file_name => 'file3'); is( scalar( @file5), 1, "one actual file found"); my $content5 = $file5[0]->get_content(); ok( $$content5 eq 'inhalt3 new version' ,"file has right actual content"); -my @file6 = SL::Dev::File->get_all_versions(file_name => 'file3'); +my @file6 = SL::Dev::File::get_all_versions(file_name => 'file3'); is( scalar( @file6), 2,"two file versions found"); $content5 = $file6[0]->get_content; ok( $$content5 eq 'inhalt3 new version' ,"file has right actual content"); $content5 = $file6[1]->get_content; ok( $$content5 eq 'inhalt3 created' ,"file has right old content"); -print "\n\nController:\n"; +#print "\n\nController Test:\n"; # now test controller #$::form->{object_id} = 1; #$::form->{object_type}= 'sales_order'; #$::form->{file_type} = 'document'; + +my $output; +open(my $outputFH, '>', \$output) or die; # This shouldn't fail +my $oldFH = select $outputFH; + $::form->{id} = $file1->id; -print "id=".$::form->{id}."\n"; use SL::Controller::File; SL::Controller::File->action_download(); + +select $oldFH; +close $outputFH; +my @lines = split "\n" , $output; +ok($lines[4] eq 'inhalt1 uploaded' ,"controller download has correct content"); + +#some controller checks $::form->{object_id} = 12345678; $::form->{object_type} = undef; +my $result='xx1'; eval { SL::Controller::File->check_object_params(); + $result='yy1'; 1; } or do { - print $@; + $result=$@; }; -$::form->{object_type} ='xx'; -$::form->{file_type} ='yy'; +$result = substr($result,0,14); +#print $result."\n"; +ok($result eq "No object type","correct error 'No object type'"); + +$::form->{object_type} ='sales_order'; +$::form->{file_type} =''; +$result='xx2'; eval { SL::Controller::File->check_object_params(); + $result='yy2'; 1; } or do { - print $@; + $result=$@; }; +$result = substr($result,0,12); +#print $result."\n"; +ok($result eq "No file type","correct error 'No file type'"); clear_up(); done_testing; @@ -86,11 +109,13 @@ done_testing; sub clear_up { # Cleaning up may fail. eval { - SL::Dev::File->delete_all(); + SL::Dev::File::delete_all(); unlink($scannerfile); }; } +} + sub reset_state { my %params = @_;