remove 2 argument form of file_pruned
authorJoey Hess <joey@kitenet.net>
Tue, 20 Apr 2010 18:08:29 +0000 (14:08 -0400)
committerJoey Hess <joey@kitenet.net>
Tue, 20 Apr 2010 18:08:29 +0000 (14:08 -0400)
IkiWiki.pm
t/file_pruned.t

index a5f83ac7a85c8e72bd59d5e9cf600b84440919f0..6d3b6c60688d9b8a785505a4603e6929783dab04 100644 (file)
@@ -1843,15 +1843,8 @@ sub deptype (@) {
 }
 
 my $file_prune_regexp;
-sub file_pruned ($;$) {
+sub file_pruned ($) {
        my $file=shift;
-       if (@_) {
-               require File::Spec;
-               $file=File::Spec->canonpath($file);
-               my $base=File::Spec->canonpath(shift);
-               return if $file eq $base;
-               $file =~ s#^\Q$base\E/+##;
-       }
 
        if (defined $config{include} && length $config{include}) {
                return 0 if $file =~ m/$config{include}/;
index 4335ed91704cf6bae56b9eb21c6153628a77867b..34f3666101b122f20b225dd23ed6582d024ca78a 100755 (executable)
@@ -1,52 +1,31 @@
 #!/usr/bin/perl
 use warnings;
 use strict;
-use Test::More tests => 54;
+use Test::More tests => 27;
 
 BEGIN { use_ok("IkiWiki"); }
 
 %config=IkiWiki::defaultconfig();
 
-ok(IkiWiki::file_pruned("src/.htaccess", "src"));
 ok(IkiWiki::file_pruned(".htaccess"));
-ok(IkiWiki::file_pruned("src/.ikiwiki/", "src"));
 ok(IkiWiki::file_pruned(".ikiwiki/"));
-ok(IkiWiki::file_pruned("src/.ikiwiki/index", "src"));
 ok(IkiWiki::file_pruned(".ikiwiki/index"));
-ok(IkiWiki::file_pruned("src/CVS/foo", "src"));
 ok(IkiWiki::file_pruned("CVS/foo"));
-ok(IkiWiki::file_pruned("src/subdir/CVS/foo", "src"));
 ok(IkiWiki::file_pruned("subdir/CVS/foo"));
-ok(IkiWiki::file_pruned("src/.svn", "src"));
 ok(IkiWiki::file_pruned(".svn"));
-ok(IkiWiki::file_pruned("src/subdir/.svn", "src"));
 ok(IkiWiki::file_pruned("subdir/.svn"));
-ok(IkiWiki::file_pruned("src/subdir/.svn/foo", "src"));
 ok(IkiWiki::file_pruned("subdir/.svn/foo"));
-ok(IkiWiki::file_pruned("src/.git", "src"));
 ok(IkiWiki::file_pruned(".git"));
-ok(IkiWiki::file_pruned("src/subdir/.git", "src"));
 ok(IkiWiki::file_pruned("subdir/.git"));
-ok(IkiWiki::file_pruned("src/subdir/.git/foo", "src"));
 ok(IkiWiki::file_pruned("subdir/.git/foo"));
-ok(! IkiWiki::file_pruned("src/svn/fo", "src"));
 ok(! IkiWiki::file_pruned("svn/fo"));
-ok(! IkiWiki::file_pruned("src/git", "src"));
 ok(! IkiWiki::file_pruned("git"));
-ok(! IkiWiki::file_pruned("src/index.mdwn", "src"));
 ok(! IkiWiki::file_pruned("index.mdwn"));
-ok(! IkiWiki::file_pruned("src/index.", "src"));
 ok(! IkiWiki::file_pruned("index."));
-
-# these are ok because while the filename starts with ".", the canonpathed
-# version does not
-ok(! IkiWiki::file_pruned("src/.", "src"));
-ok(! IkiWiki::file_pruned("src/./", "src"));
-# OTOH, without a srcdir, no canonpath, so they're not allowed.
 ok(IkiWiki::file_pruned("."));
 ok(IkiWiki::file_pruned("./"));
 
-# Without a srcdir, absolute filenames are not allowed.
+# absolute filenames are not allowed.
 ok(IkiWiki::file_pruned("/etc/passwd"));
 ok(IkiWiki::file_pruned("//etc/passwd"));
 ok(IkiWiki::file_pruned("/"));
@@ -54,22 +33,8 @@ ok(IkiWiki::file_pruned("//"));
 ok(IkiWiki::file_pruned("///"));
 
 
-ok(IkiWiki::file_pruned("src/..", "src"));
 ok(IkiWiki::file_pruned(".."));
-ok(IkiWiki::file_pruned("src/../", "src"));
-ok(IkiWiki::file_pruned("../"));
-ok(IkiWiki::file_pruned("src/../", "src"));
 ok(IkiWiki::file_pruned("../"));
 
-# This is perhaps counterintuitive.
-ok(! IkiWiki::file_pruned("src", "src"));
-
-# Dots, etc, in the srcdir are ok.
-ok(! IkiWiki::file_pruned("/.foo/src", "/.foo/src"));
-ok(IkiWiki::file_pruned("/.foo/src/.foo/src", "/.foo/src"));
-ok(! IkiWiki::file_pruned("/.foo/src/index.mdwn", "/.foo/src/index.mdwn"));
-
-ok(IkiWiki::file_pruned("src/y/foo.dpkg-tmp", "src"));
 ok(IkiWiki::file_pruned("y/foo.dpkg-tmp"));
-ok(IkiWiki::file_pruned("src/y/foo.ikiwiki-new", "src"));
 ok(IkiWiki::file_pruned("y/foo.ikiwiki-new"));