From 10e26c0370abcc9afa83ff948092ea231d0ca6af Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Tue, 18 Dec 2007 00:38:06 -0500 Subject: [PATCH] file_pruned regression tests --- t/file_pruned.t | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100755 t/file_pruned.t diff --git a/t/file_pruned.t b/t/file_pruned.t new file mode 100755 index 000000000..7d46c4b7f --- /dev/null +++ b/t/file_pruned.t @@ -0,0 +1,38 @@ +#!/usr/bin/perl +use warnings; +use strict; +use Test::More tests => 24; + +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")); + +# 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")); + +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("x/y/foo.dpkg-tmp", "src")); +ok(IkiWiki::file_pruned("x/y/foo.ikiwiki-new", "src")); -- 2.32.0.93.g670b81a890