X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=t%2F08multipart-suffix.t;h=e6d7ddde762e0eec409a3770e45cf9ccae90f116;hb=HEAD;hp=367db05f99e3e130af836031dccb6870697ccea0;hpb=23b5a50c502f7deffb8bf2ef5624537b80d952a0;p=catagits%2FHTTP-Body.git diff --git a/t/08multipart-suffix.t b/t/08multipart-suffix.t index 367db05..e6d7ddd 100644 --- a/t/08multipart-suffix.t +++ b/t/08multipart-suffix.t @@ -19,45 +19,65 @@ use File::Temp qw/ tempdir /; my $path = catdir( getcwd(), 't', 'data', 'multipart' ); { + $HTTP::Body::MultiPart::file_temp_suffix = undef; + my $uploads = uploads_for('001'); - like( - $uploads->{upload2}{tempname}, qr/\.pl$/, - 'tempname preserves .pl suffix' - ); + { + my ($volume,$directories,$file) = File::Spec->splitpath( $uploads->{upload2}{tempname} ); + like( + $file, qr/^.{10}\.pl$/, + 'tempname preserves .pl suffix' + ); + } + + { + my ($volume,$directories,$file) = File::Spec->splitpath( $uploads->{upload4}{tempname} ); + unlike( + $file, qr/^.{10}\..+$/, + 'tempname for upload4 has no suffix' + ); + } - unlike( - $uploads->{upload4}{tempname}, qr/\..+$/, - 'tempname for upload4 has no suffix' - ); } { my $uploads = uploads_for('006'); - like( - $uploads->{upload2}{tempname}, qr/\.pl$/, - 'tempname preserves .pl suffix with Windows filename' - ); + { + my ($volume,$directories,$file) = File::Spec->splitpath( $uploads->{upload2}{tempname} ); + like( + $file, qr/^.{10}\.pl$/, + 'tempname preserves .pl suffix with Windows filename' + ); + } + } { my $uploads = uploads_for('014'); - like( - $uploads->{upload}{tempname}, qr/\.foo\.txt$/, - 'tempname preserves .foo.txt suffix' - ); - - like( - $uploads->{upload2}{tempname}, qr/\.txt$/, - 'tempname preserves .txt suffix when dir name has .' - ); + { + my ($volume,$directories,$file) = File::Spec->splitpath( $uploads->{upload}{tempname} ); + like( + $file, qr/^.{10}\.foo\.txt$/, + 'tempname preserves .foo.txt suffix' + ); + } + + { + my ($volume,$directories,$file) = File::Spec->splitpath( $uploads->{upload2}{tempname} ); + like( + $file, qr/^.{10}\.txt$/, + 'tempname preserves .txt suffix when dir name has .' + ); + } + + like( + $uploads->{upload2}{tempname}, qr/[\\\/]\w+.txt$/, + 'tempname only gets extension from filename, not from a directory name' + ); - unlike( - $uploads->{upload2}{tempname}, qr/\\/, - 'tempname only gets extension from filename, not from a directory name' - ); } sub uploads_for {