From 2794d7ef5abc4fa8fc2eb42d5c85ada197df0767 Mon Sep 17 00:00:00 2001 From: joey Date: Wed, 2 Aug 2006 00:14:31 +0000 Subject: * Renamed GlobLists to PageSpecs. * PageSpecs can now include nested parens, "and", and "or". This remains backwards compatible to the old GlobList format. It's implemented by treating the GlobList as a very limited microlanguage that is transformed to perl code that does the matching. * The old GlobList format is deprecated, and I encourage users to switch to using the new PageSpec format. Compatability with the old format will be removed at some point, possibly by 2.0. * Wiki rebuild needed on upgrade to this version due to PageSpec change. * Add support for creation_month and creation_year to PageSpec. Closes: #380680 * Changes to index file encoding. --- t/pagespec_match.t | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100755 t/pagespec_match.t (limited to 't/pagespec_match.t') diff --git a/t/pagespec_match.t b/t/pagespec_match.t new file mode 100755 index 000000000..35d420f10 --- /dev/null +++ b/t/pagespec_match.t @@ -0,0 +1,28 @@ +#!/usr/bin/perl +use warnings; +use strict; +use Test::More tests => 20; + +BEGIN { use_ok("IkiWiki"); } + +ok(IkiWiki::pagespec_match("foo", "*")); +ok(IkiWiki::pagespec_match("page", "?ag?")); +ok(! IkiWiki::pagespec_match("page", "?a?g?")); +ok(IkiWiki::pagespec_match("foo.png", "*.*")); +ok(! IkiWiki::pagespec_match("foo", "*.*")); +ok(IkiWiki::pagespec_match("foo", "foo or bar"), "simple list"); +ok(IkiWiki::pagespec_match("bar", "foo or bar"), "simple list 2"); +ok(IkiWiki::pagespec_match("foo", "f?? and !foz")); +ok(! IkiWiki::pagespec_match("foo", "f?? and !foo")); +ok(! IkiWiki::pagespec_match("foo", "* and !foo")); +ok(! IkiWiki::pagespec_match("foo", "foo and !foo")); +ok(! IkiWiki::pagespec_match("foo.png", "* and !*.*")); + +# old style globlists +ok(IkiWiki::pagespec_match("foo", "foo bar"), "simple list"); +ok(IkiWiki::pagespec_match("bar", "foo bar"), "simple list 2"); +ok(IkiWiki::pagespec_match("foo", "f?? !foz")); +ok(! IkiWiki::pagespec_match("foo", "f?? !foo")); +ok(! IkiWiki::pagespec_match("foo", "* !foo")); +ok(! IkiWiki::pagespec_match("foo", "foo !foo")); +ok(! IkiWiki::pagespec_match("foo.png", "* !*.*")); -- cgit v1.2.3