1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47
|
Source: libtest-filename-perl
Section: perl
Priority: optional
Build-Depends: cdbs,
devscripts,
perl,
debhelper,
dh-buildinfo,
libpath-tiny-perl,
libtest-tester-perl
Maintainer: Debian Perl Group <pkg-perl-maintainers@lists.alioth.debian.org>
Uploaders: Jonas Smedegaard <dr@jones.dk>
Standards-Version: 3.9.5
Vcs-Git: git://anonscm.debian.org/pkg-perl/packages/libtest-filename-perl
Vcs-Browser: http://anonscm.debian.org/gitweb/?p=pkg-perl/packages/libtest-filename-perl.git
Homepage: https://metacpan.org/release/Test-Filename
Package: libtest-filename-perl
Architecture: all
Depends: ${cdbs:Depends},
${misc:Depends},
${perl:Depends}
Description: portable filename comparison
Many cross-platform test failures -- particularly on Win32 -- are due
to hard-coded file paths being used in comparison tests.
.
my $file = get_file(); # returns "foo\bar.t";
is( $file, "foo/bar.t" ); # fails on Win32
.
Test::Filename provides some handy functions to convert all those path
separators automatically so filename tests will just DWIM.
.
The alternative is to write your own utility subroutine and use it
everywhere or just keep on littering your test code with calls to
File::Spec -- yuck!
.
is( $file, File::Spec->canonpath("some/path"), "should pass" );
.
Since this module is so simple, you might not think it worth including
as a dependency. After all, it's not that hard to always remember to
use File::Spec, Path::Tiny or some other file utility, right? But odds
are that, at some point, you'll be so busy writing tests that you'll
forget and hard-code a path in your haste to show what a clever
programmer you are.
.
So just use this module and stop worrying about it. You'll be happier
and so will anyone trying to install your modules on Win32.
|