X-Git-Url: http://git.vanrenterghem.biz/git.ikiwiki.info.git/blobdiff_plain/fe4f176f725b069ac74561600bba982c2d9ad607..0aad1794ad27da6ab41001e335eba952c2e0ac88:/t/index.t?ds=sidebyside diff --git a/t/index.t b/t/index.t index 107dac9d0..392a167e9 100755 --- a/t/index.t +++ b/t/index.t @@ -4,7 +4,7 @@ use strict; use IkiWiki; package IkiWiki; # use internal variables -use Test::More tests => 27; +use Test::More tests => 31; $config{wikistatedir}="/tmp/ikiwiki-test.$$"; system "rm -rf $config{wikistatedir}"; @@ -31,10 +31,11 @@ $renderedfiles{"bar"}=["bar.html", "bar.rss", "sparkline-foo.gif"]; $renderedfiles{"bar.png"}=["bar.png"]; $links{"Foo"}=["bar.png"]; $links{"bar"}=["Foo", "new-page"]; +$typedlinks{"bar"}={tag => {"Foo" => 1}}; $links{"bar.png"}=[]; -$depends{"Foo"}=[]; -$depends{"bar"}=["foo*"]; -$depends{"bar.png"}=[]; +$depends{"Foo"}={}; +$depends{"bar"}={"foo*" => 1}; +$depends{"bar.png"}={}; $pagestate{"bar"}{meta}{title}="a page about bar"; $pagestate{"bar"}{meta}{moo}="mooooo"; # only loaded plugins save state, so this should not be saved out @@ -45,7 +46,7 @@ ok(-s "$config{wikistatedir}/indexdb", "index file created"); # Clear state. %oldrenderedfiles=%pagectime=(); -%pagesources=%pagemtime=%oldlinks=%links=%depends= +%pagesources=%pagemtime=%oldlinks=%links=%depends=%typedlinks=%oldtypedlinks= %destsources=%renderedfiles=%pagecase=%pagestate=(); ok(loadindex(), "load index"); @@ -80,9 +81,9 @@ is_deeply(\%links, { "bar.png" => [], }, "%links loaded correctly"); is_deeply(\%depends, { - Foo => [], - bar => ["foo*"], - "bar.png" => [], + Foo => {}, + bar => {"foo*" => 1}, + "bar.png" => {}, }, "%depends loaded correctly"); is_deeply(\%pagestate, { bar => { @@ -104,17 +105,26 @@ is_deeply(\%destsources, { "sparkline-foo.gif" => "bar", "bar.png" => "bar.png", }, "%destsources generated correctly"); +is_deeply(\%typedlinks, { + bar => {tag => {"Foo" => 1}}, +}, "%typedlinks loaded correctly"); +is_deeply(\%oldtypedlinks, { + bar => {tag => {"Foo" => 1}}, +}, "%oldtypedlinks loaded correctly"); # Clear state. %oldrenderedfiles=%pagectime=(); -%pagesources=%pagemtime=%oldlinks=%links=%depends= +%pagesources=%pagemtime=%oldlinks=%links=%depends=%typedlinks=%oldtypedlinks= %destsources=%renderedfiles=%pagecase=%pagestate=(); -# When state is loaded for a wiki rebuild, only ctime and oldrenderedfiles -# are retained. +# When state is loaded for a wiki rebuild, only ctime, oldrenderedfiles, +# and pagesources are retained. $config{rebuild}=1; ok(loadindex(), "load index"); is_deeply(\%pagesources, { + Foo => "Foo.mdwn", + bar => "bar.mdwn", + "bar.png" => "bar.png", }, "%pagesources loaded correctly"); is_deeply(\%pagemtime, { }, "%pagemtime loaded correctly"); @@ -136,9 +146,16 @@ is_deeply(\%depends, { }, "%depends loaded correctly"); is_deeply(\%pagestate, { }, "%pagestate loaded correctly"); -is_deeply(\%pagecase, { +is_deeply(\%pagecase, { # generated implicitly since pagesources is loaded + foo => "Foo", + bar => "bar", + "bar.png" => "bar.png" }, "%pagecase generated correctly"); is_deeply(\%destsources, { }, "%destsources generated correctly"); +is_deeply(\%typedlinks, { +}, "%typedlinks cleared correctly"); +is_deeply(\%oldtypedlinks, { +}, "%oldtypedlinks cleared correctly"); system "rm -rf $config{wikistatedir}";