X-Git-Url: https://sipb.mit.edu/gitweb.cgi/ikiwiki.git/blobdiff_plain/10e26c0370abcc9afa83ff948092ea231d0ca6af..8345139315e7611af118f9ee86b39a6279385235:/t/file_pruned.t diff --git a/t/file_pruned.t b/t/file_pruned.t index 7d46c4b7f..34f366610 100755 --- a/t/file_pruned.t +++ b/t/file_pruned.t @@ -1,38 +1,40 @@ #!/usr/bin/perl use warnings; use strict; -use Test::More tests => 24; +use Test::More tests => 27; BEGIN { use_ok("IkiWiki"); } %config=IkiWiki::defaultconfig(); -ok(IkiWiki::file_pruned("src/.ikiwiki/", "src")); -ok(IkiWiki::file_pruned("src/.ikiwiki/index", "src")); -ok(IkiWiki::file_pruned("src/.svn", "src")); -ok(IkiWiki::file_pruned("src/subdir/.svn", "src")); -ok(IkiWiki::file_pruned("src/subdir/.svn/foo", "src")); -ok(IkiWiki::file_pruned("src/.git", "src")); -ok(IkiWiki::file_pruned("src/subdir/.git", "src")); -ok(IkiWiki::file_pruned("src/subdir/.git/foo", "src")); -ok(! IkiWiki::file_pruned("src/svn/fo", "src")); -ok(! IkiWiki::file_pruned("src/git", "src")); -ok(! IkiWiki::file_pruned("src/index.mdwn", "src")); -ok(! IkiWiki::file_pruned("src/index.", "src")); +ok(IkiWiki::file_pruned(".htaccess")); +ok(IkiWiki::file_pruned(".ikiwiki/")); +ok(IkiWiki::file_pruned(".ikiwiki/index")); +ok(IkiWiki::file_pruned("CVS/foo")); +ok(IkiWiki::file_pruned("subdir/CVS/foo")); +ok(IkiWiki::file_pruned(".svn")); +ok(IkiWiki::file_pruned("subdir/.svn")); +ok(IkiWiki::file_pruned("subdir/.svn/foo")); +ok(IkiWiki::file_pruned(".git")); +ok(IkiWiki::file_pruned("subdir/.git")); +ok(IkiWiki::file_pruned("subdir/.git/foo")); +ok(! IkiWiki::file_pruned("svn/fo")); +ok(! IkiWiki::file_pruned("git")); +ok(! IkiWiki::file_pruned("index.mdwn")); +ok(! IkiWiki::file_pruned("index.")); +ok(IkiWiki::file_pruned(".")); +ok(IkiWiki::file_pruned("./")); -# 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")); +# absolute filenames are not allowed. +ok(IkiWiki::file_pruned("/etc/passwd")); +ok(IkiWiki::file_pruned("//etc/passwd")); +ok(IkiWiki::file_pruned("/")); +ok(IkiWiki::file_pruned("//")); +ok(IkiWiki::file_pruned("///")); -ok(IkiWiki::file_pruned("src/..", "src")); -ok(IkiWiki::file_pruned("src/../", "src")); -ok(IkiWiki::file_pruned("src/../", "src")); -ok(! IkiWiki::file_pruned("src", "src")); -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("..")); +ok(IkiWiki::file_pruned("../")); -ok(IkiWiki::file_pruned("x/y/foo.dpkg-tmp", "src")); -ok(IkiWiki::file_pruned("x/y/foo.ikiwiki-new", "src")); +ok(IkiWiki::file_pruned("y/foo.dpkg-tmp")); +ok(IkiWiki::file_pruned("y/foo.ikiwiki-new"));