diff options
author | joey <joey@0fa5a96a-9a0e-0410-b3b2-a0fd24251071> | 2007-03-21 23:11:09 +0000 |
---|---|---|
committer | joey <joey@0fa5a96a-9a0e-0410-b3b2-a0fd24251071> | 2007-03-21 23:11:09 +0000 |
commit | 2a0d91af2f8f6ca3142c8f73ea6869e7a914bb30 (patch) | |
tree | d4c7c3dae158e8603cd1a3c01fd8784ef478ba2e /t | |
parent | 0daec2bf14871072a4b3d3aebbbfc5eaa7608ef5 (diff) |
* Fix link() PageSpecs to not just look at the raw link text, but at where
that given link points based on the page doing the linking. Note that this
could make such PageSpecs match different things than before, if you
relied on the old behavior of them only matching the raw link text.
* This required changing the match_* interface, adding a third parameter.
* Allow link() PageSpecs to match relative, as is allowed with globs.a
* Add postform option to inline plugin.
* Add an bug tracker to the softwaresite example.
Diffstat (limited to 't')
-rwxr-xr-x | t/pagespec_match.t | 27 |
1 files changed, 22 insertions, 5 deletions
diff --git a/t/pagespec_match.t b/t/pagespec_match.t index 63c2a5098..09e9582d1 100755 --- a/t/pagespec_match.t +++ b/t/pagespec_match.t @@ -1,7 +1,7 @@ #!/usr/bin/perl use warnings; use strict; -use Test::More tests => 42; +use Test::More tests => 46; BEGIN { use_ok("IkiWiki"); } @@ -25,11 +25,28 @@ ok(pagespec_match("a/b/foo", "./*", "a/b"), "relative 2"); ok(pagespec_match("foo", "./*", "a"), "relative toplevel"); ok(pagespec_match("foo/bar", "*", "baz"), "absolute"); +# The link and backlink stuff needs this. +$config{userdir}=""; $links{foo}=[qw{bar baz}]; -ok(pagespec_match("foo", "link(bar)", "")); -ok(! pagespec_match("foo", "link(quux)", "")); -ok(pagespec_match("bar", "backlink(foo)", "")); -ok(! pagespec_match("quux", "backlink(foo)", "")); +$links{bar}=[]; +$links{baz}=[]; +$links{"bugs/foo"}=[qw{bugs/done}]; +$links{"bugs/done"}=[]; +$links{"bugs/bar"}=[qw{done}]; +$links{"done"}=[]; +$links{"examples/softwaresite/bugs/fails_to_frobnicate"}=[qw{done}]; +$links{"examples/softwaresite/bugs/done"}=[]; + +ok(pagespec_match("foo", "link(bar)", ""), "link"); +ok(! pagespec_match("foo", "link(quux)", ""), "failed link"); +ok(pagespec_match("bugs/foo", "link(done)", "bugs/done"), "link match to bestlink"); +ok(! pagespec_match("examples/softwaresite/bugs/done", "link(done)", + "bugs/done"), "link match to bestlink"); +ok(pagespec_match("examples/softwaresite/bugs/fails_to_frobnicate", + "link(./done)", "examples/softwaresite/bugs/done"), "link relative"); +ok(! pagespec_match("foo", "link(./bar)", "foo/bar"), "link relative fail"); +ok(pagespec_match("bar", "backlink(foo)", ""), "backlink"); +ok(! pagespec_match("quux", "backlink(foo)", ""), "failed backlink"); $IkiWiki::pagectime{foo}=1154532692; # Wed Aug 2 11:26 EDT 2006 $IkiWiki::pagectime{bar}=1154532695; # after |