Run autopkgtest tests using autodep8 and the pkg-perl team's infrastructure
parent
78a47d44c7
commit
cdfb4ab1a3
|
@ -11,6 +11,10 @@ ikiwiki (3.20150615) UNRELEASED; urgency=medium
|
|||
* Modified page.tmpl to to set html lang= and dir= when
|
||||
values have been specified for them, which the po plugin does.
|
||||
|
||||
[ Simon McVittie ]
|
||||
* Run autopkgtest tests using autodep8 and the pkg-perl team's
|
||||
infrastructure
|
||||
|
||||
-- Simon McVittie <smcv@debian.org> Mon, 15 Jun 2015 18:13:23 +0100
|
||||
|
||||
ikiwiki (3.20150614) unstable; urgency=medium
|
||||
|
|
|
@ -16,6 +16,7 @@ Uploaders: Josh Triplett <josh@freedesktop.org>
|
|||
Standards-Version: 3.9.5
|
||||
Homepage: http://ikiwiki.info/
|
||||
Vcs-Git: git://git.ikiwiki.info/
|
||||
Testsuite: autopkgtest-pkg-perl
|
||||
|
||||
Package: ikiwiki
|
||||
Architecture: all
|
||||
|
|
|
@ -0,0 +1 @@
|
|||
INSTALLED_TESTS=1
|
|
@ -0,0 +1,4 @@
|
|||
IkiWiki/Plugin/amazon_s3.pm
|
||||
IkiWiki/Plugin/cvs.pm
|
||||
IkiWiki/Plugin/monotone.pm
|
||||
IkiWiki/Plugin/po.pm
|
|
@ -0,0 +1 @@
|
|||
IkiWiki
|
|
@ -1,21 +1,32 @@
|
|||
#!/usr/bin/perl
|
||||
use warnings;
|
||||
use strict;
|
||||
use Test::More 'no_plan';
|
||||
use Test::More;
|
||||
|
||||
my $installed = $ENV{INSTALLED_TESTS};
|
||||
|
||||
ok(! system("rm -rf t/tmp; mkdir t/tmp"));
|
||||
ok(! system("make -s ikiwiki.out"));
|
||||
ok(! system("make underlay_install DESTDIR=`pwd`/t/tmp/install PREFIX=/usr >/dev/null"));
|
||||
|
||||
my @command;
|
||||
if ($installed) {
|
||||
@command = qw(env LC_ALL=C ikiwiki);
|
||||
}
|
||||
else {
|
||||
ok(! system("make -s ikiwiki.out"));
|
||||
ok(! system("make underlay_install DESTDIR=`pwd`/t/tmp/install PREFIX=/usr >/dev/null"));
|
||||
@command = qw(env LC_ALL=C perl -I. ./ikiwiki.out
|
||||
--underlaydir=t/tmp/install/usr/share/ikiwiki/basewiki
|
||||
--set underlaydirbase=t/tmp/install/usr/share/ikiwiki
|
||||
--templatedir=templates);
|
||||
}
|
||||
|
||||
foreach my $plugin ("", "listdirectives") {
|
||||
ok(! system("LC_ALL=C perl -I. ./ikiwiki.out --rebuild --plugin brokenlinks ".
|
||||
ok(! system(@command, qw(--rebuild --plugin brokenlinks),
|
||||
# always enabled because pages link to it conditionally,
|
||||
# which brokenlinks cannot handle properly
|
||||
"--plugin smiley ".
|
||||
($plugin ? "--plugin $plugin " : "").
|
||||
"--underlaydir=t/tmp/install/usr/share/ikiwiki/basewiki ".
|
||||
"--set underlaydirbase=t/tmp/install/usr/share/ikiwiki ".
|
||||
"--templatedir=templates t/basewiki_brokenlinks t/tmp/out"));
|
||||
qw(--plugin smiley),
|
||||
($plugin ? ("--plugin", $plugin) : ()),
|
||||
qw(t/basewiki_brokenlinks t/tmp/out)));
|
||||
my $result=`grep 'no broken links' t/tmp/out/index.html`;
|
||||
ok(length($result));
|
||||
if (! length $result) {
|
||||
|
@ -27,3 +38,5 @@ foreach my $plugin ("", "listdirectives") {
|
|||
ok(! system("rm -rf t/tmp/out t/basewiki_brokenlinks/.ikiwiki"));
|
||||
}
|
||||
ok(! system("rm -rf t/tmp"));
|
||||
|
||||
done_testing();
|
||||
|
|
21
t/comments.t
21
t/comments.t
|
@ -1,7 +1,7 @@
|
|||
#!/usr/bin/perl
|
||||
use warnings;
|
||||
use strict;
|
||||
use Test::More 'no_plan';
|
||||
use Test::More;
|
||||
use IkiWiki;
|
||||
|
||||
ok(! system("rm -rf t/tmp"));
|
||||
|
@ -9,6 +9,20 @@ ok(mkdir "t/tmp");
|
|||
ok(! system("cp -R t/tinyblog t/tmp/in"));
|
||||
ok(mkdir "t/tmp/in/post" or -d "t/tmp/in/post");
|
||||
|
||||
my $installed = $ENV{INSTALLED_TESTS};
|
||||
|
||||
my @command;
|
||||
if ($installed) {
|
||||
@command = qw(ikiwiki);
|
||||
}
|
||||
else {
|
||||
ok(! system("make -s ikiwiki.out"));
|
||||
@command = qw(perl -I. ./ikiwiki.out
|
||||
--underlaydir=underlays/basewiki
|
||||
--set underlaydirbase=underlays
|
||||
--templatedir=templates);
|
||||
}
|
||||
|
||||
my $comment;
|
||||
|
||||
$comment = <<EOF;
|
||||
|
@ -39,8 +53,7 @@ ok(utime(222222222, 222222222, "t/tmp/in/post/comment_2._comment"));
|
|||
ok(utime(333333333, 333333333, "t/tmp/in/post/comment_1._comment"));
|
||||
|
||||
# Build the wiki
|
||||
ok(! system("make -s ikiwiki.out"));
|
||||
ok(! system("perl -I. ./ikiwiki.out --verbose --plugin comments --url=http://example.com --cgiurl=http://example.com/ikiwiki.cgi --rss --atom --underlaydir=underlays/basewiki --set underlaydirbase=underlays --set comments_pagespec='*' --templatedir=templates t/tmp/in t/tmp/out"));
|
||||
ok(! system(@command, qw(--verbose --plugin comments --url=http://example.com --cgiurl=http://example.com/ikiwiki.cgi --rss --atom --set comments_pagespec=* t/tmp/in t/tmp/out)));
|
||||
|
||||
# Check that the comments are in the right order
|
||||
|
||||
|
@ -55,3 +68,5 @@ sub slurp {
|
|||
my $content = slurp("t/tmp/out/post/index.html");
|
||||
ok(defined $content);
|
||||
ok($content =~ m/I conquered.*I explored.*I landed/s);
|
||||
|
||||
done_testing();
|
||||
|
|
|
@ -4,15 +4,30 @@ use warnings;
|
|||
use strict;
|
||||
use Test::More tests => 106;
|
||||
|
||||
my $installed = $ENV{INSTALLED_TESTS};
|
||||
|
||||
my @command;
|
||||
if ($installed) {
|
||||
ok(1, "running installed");
|
||||
@command = qw(ikiwiki);
|
||||
}
|
||||
else {
|
||||
ok(! system("make -s ikiwiki.out"));
|
||||
@command = qw(perl -I. ./ikiwiki.out
|
||||
--underlaydir=underlays/basewiki
|
||||
--set underlaydirbase=underlays
|
||||
--templatedir=templates);
|
||||
}
|
||||
|
||||
# setup
|
||||
my $srcdir="t/tmp/src";
|
||||
my $destdir="t/tmp/dest";
|
||||
ok(! system("make -s ikiwiki.out"));
|
||||
|
||||
# runs ikiwiki to build test site
|
||||
sub runiki {
|
||||
my $testdesc=shift;
|
||||
ok((! system("perl -I. ./ikiwiki.out --plugin txt --plugin rawhtml --underlaydir=underlays/basewiki --set underlaydirbase=underlays --templatedir=templates $srcdir $destdir @_")),
|
||||
ok((! system(@command, qw(--plugin txt --plugin rawhtml),
|
||||
$srcdir, $destdir, @_)),
|
||||
$testdesc);
|
||||
}
|
||||
sub refreshiki {
|
||||
|
|
12
t/cvs.t
12
t/cvs.t
|
@ -4,6 +4,8 @@ use strict;
|
|||
use Test::More; my $total_tests = 72;
|
||||
use IkiWiki;
|
||||
|
||||
my $installed = $ENV{INSTALLED_TESTS};
|
||||
|
||||
my $default_test_methods = '^test_*';
|
||||
my @required_programs = qw(
|
||||
cvs
|
||||
|
@ -606,12 +608,14 @@ sub _generate_and_configure_post_commit_hook {
|
|||
$config{wrapper} = $config{cvs_wrapper};
|
||||
|
||||
require IkiWiki::Wrapper;
|
||||
{
|
||||
no warnings 'once';
|
||||
if ($installed) {
|
||||
$IkiWiki::program_to_wrap = 'ikiwiki.out';
|
||||
# XXX substitute its interpreter to Makefile's $(PERL)
|
||||
# XXX best solution: do this to all scripts during build
|
||||
}
|
||||
else {
|
||||
$IkiWiki::program_to_wrap = `which ikiwiki`;
|
||||
}
|
||||
# XXX substitute its interpreter to Makefile's $(PERL)
|
||||
# XXX best solution: do this to all scripts during build
|
||||
IkiWiki::gen_wrapper();
|
||||
|
||||
my $cvs = "cvs -d $config{cvsrepo}";
|
||||
|
|
10
t/git.t
10
t/git.t
|
@ -27,8 +27,16 @@ $config{diffurl} = '/nonexistent/cgit/plain/[[file]]';
|
|||
IkiWiki::loadplugins();
|
||||
IkiWiki::checkconfig();
|
||||
|
||||
my $makerepo;
|
||||
if ($ENV{INSTALLED_TESTS}) {
|
||||
$makerepo = "ikiwiki-makerepo";
|
||||
}
|
||||
else {
|
||||
$makerepo = "./ikiwiki-makerepo";
|
||||
}
|
||||
|
||||
ok (mkdir($config{srcdir}));
|
||||
is (system("./ikiwiki-makerepo git $config{srcdir} $dir/repo"), 0);
|
||||
is (system("$makerepo git $config{srcdir} $dir/repo"), 0);
|
||||
|
||||
my @changes;
|
||||
@changes = IkiWiki::rcs_recentchanges(3);
|
||||
|
|
24
t/img.t
24
t/img.t
|
@ -19,6 +19,22 @@ plan(skip_all => "Image::Magick not available")
|
|||
|
||||
use IkiWiki;
|
||||
|
||||
my $installed = $ENV{INSTALLED_TESTS};
|
||||
|
||||
my @command;
|
||||
if ($installed) {
|
||||
@command = qw(ikiwiki);
|
||||
}
|
||||
else {
|
||||
ok(! system("make -s ikiwiki.out"));
|
||||
@command = qw(perl -I. ./ikiwiki.out
|
||||
--underlaydir=underlays/basewiki
|
||||
--set underlaydirbase=underlays
|
||||
--templatedir=templates);
|
||||
}
|
||||
|
||||
push @command, qw(--set usedirs=0 --plugin img t/tmp/in t/tmp/out --verbose);
|
||||
|
||||
my $magick = new Image::Magick;
|
||||
my $SVGS_WORK = defined $magick->QueryFormat("svg");
|
||||
|
||||
|
@ -58,11 +74,7 @@ EOF
|
|||
);
|
||||
ok(utime(333333333, 333333333, "t/tmp/in/imgconversions.mdwn"));
|
||||
|
||||
ok(! system("make -s ikiwiki.out"));
|
||||
|
||||
my $command = "perl -I. ./ikiwiki.out --set usedirs=0 --templatedir=templates --plugin img t/tmp/in t/tmp/out --verbose";
|
||||
|
||||
ok(! system($command));
|
||||
ok(! system(@command));
|
||||
|
||||
sub size($) {
|
||||
my $filename = shift;
|
||||
|
@ -98,7 +110,7 @@ is(size("$outpath/x6-a:b:c:d:e:f:g:h:i:j.png"), "6x6");
|
|||
if (1) { # for easier testing
|
||||
writefile("imgconversions.mdwn", "t/tmp/in", "nothing to see here");
|
||||
|
||||
ok(! system("$command --refresh"));
|
||||
ok(! system(@command, "--refresh"));
|
||||
|
||||
ok(! -e "$outpath/10x-simple.png");
|
||||
ok(! -e "$outpath/10x-simple-svg.png");
|
||||
|
|
27
t/inline.t
27
t/inline.t
|
@ -4,6 +4,24 @@ use strict;
|
|||
use Test::More;
|
||||
use IkiWiki;
|
||||
|
||||
my $installed = $ENV{INSTALLED_TESTS};
|
||||
|
||||
my @command;
|
||||
if ($installed) {
|
||||
@command = qw(ikiwiki);
|
||||
}
|
||||
else {
|
||||
ok(! system("make -s ikiwiki.out"));
|
||||
@command = qw(perl -I. ./ikiwiki.out
|
||||
--underlaydir=underlays/basewiki
|
||||
--set underlaydirbase=underlays
|
||||
--templatedir=templates);
|
||||
}
|
||||
|
||||
push @command, qw(--set usedirs=0 --plugin inline
|
||||
--url=http://example.com --cgiurl=http://example.com/ikiwiki.cgi
|
||||
--rss --atom t/tmp/in t/tmp/out --verbose);
|
||||
|
||||
my $blob;
|
||||
|
||||
my $add_new_post = gettext("Add a new post titled:");
|
||||
|
@ -35,13 +53,8 @@ foreach my $page (qw(protagonists/shepard protagonists/link
|
|||
write_old_file("$page.mdwn", "this page is {$page}");
|
||||
}
|
||||
|
||||
ok(! system("make -s ikiwiki.out"));
|
||||
|
||||
my $command = "perl -I. ./ikiwiki.out --set usedirs=0 --plugin inline --url=http://example.com --cgiurl=http://example.com/ikiwiki.cgi --rss --atom --underlaydir=underlays/basewiki --set underlaydirbase=underlays --templatedir=templates t/tmp/in t/tmp/out --verbose";
|
||||
|
||||
ok(! system($command));
|
||||
|
||||
ok(! system("$command --refresh"));
|
||||
ok(! system(@command));
|
||||
ok(! system(@command, "--refresh"));
|
||||
|
||||
$blob = readfile("t/tmp/out/protagonists.html");
|
||||
like($blob, qr{\Q$add_new_post\E}, 'rootpage=yes gives postform');
|
||||
|
|
19
t/meta.t
19
t/meta.t
|
@ -8,10 +8,21 @@ my $tmp = 't/tmp';
|
|||
my $srcdir = "$tmp/in";
|
||||
my $destdir = "$tmp/out";
|
||||
|
||||
my @command = (qw(./ikiwiki.out --plugin meta --disable-plugin htmlscrubber));
|
||||
push @command, qw(-underlaydir=underlays/basewiki);
|
||||
push @command, qw(-set underlaydirbase=underlays);
|
||||
push @command, qw(--templatedir=templates);
|
||||
my $installed = $ENV{INSTALLED_TESTS};
|
||||
|
||||
my @command;
|
||||
if ($installed) {
|
||||
@command = qw(ikiwiki);
|
||||
}
|
||||
else {
|
||||
ok(! system("make -s ikiwiki.out"));
|
||||
@command = qw(perl -I. ./ikiwiki.out
|
||||
--underlaydir=underlays/basewiki
|
||||
--set underlaydirbase=underlays
|
||||
--templatedir=templates);
|
||||
}
|
||||
|
||||
push @command, qw(--plugin meta --disable-plugin htmlscrubber);
|
||||
push @command, $srcdir, $destdir;
|
||||
|
||||
sub write_build_read_compare {
|
||||
|
|
|
@ -1,14 +1,31 @@
|
|||
#!/usr/bin/perl
|
||||
use warnings;
|
||||
use strict;
|
||||
use Test::More 'no_plan';
|
||||
use Test::More;
|
||||
|
||||
my $installed = $ENV{INSTALLED_TESTS};
|
||||
|
||||
my @command;
|
||||
if ($installed) {
|
||||
@command = qw(ikiwiki);
|
||||
}
|
||||
else {
|
||||
ok(! system("make -s ikiwiki.out"));
|
||||
@command = qw(perl -I. ./ikiwiki.out
|
||||
--underlaydir=underlays/basewiki
|
||||
--set underlaydirbase=underlays
|
||||
--templatedir=templates);
|
||||
}
|
||||
|
||||
ok(! system("rm -rf t/tmp"));
|
||||
ok(! system("mkdir t/tmp"));
|
||||
ok(! system("make -s ikiwiki.out"));
|
||||
ok(! system("perl -I. ./ikiwiki.out --plugin inline --url=http://example.com --cgiurl=http://example.com/ikiwiki.cgi --rss --atom --underlaydir=underlays/basewiki --set underlaydirbase=underlays --templatedir=templates t/tinyblog t/tmp/out"));
|
||||
ok(! system(@command, qw(--plugin inline --url=http://example.com
|
||||
--cgiurl=http://example.com/ikiwiki.cgi --rss --atom
|
||||
t/tinyblog t/tmp/out)));
|
||||
# This guid should never, ever change, for any reason whatsoever!
|
||||
my $guid="http://example.com/post/";
|
||||
ok(length `egrep '<guid.*>$guid</guid>' t/tmp/out/index.rss`);
|
||||
ok(length `egrep '<id>$guid</id>' t/tmp/out/index.atom`);
|
||||
ok(! system("rm -rf t/tmp t/tinyblog/.ikiwiki"));
|
||||
|
||||
done_testing();
|
||||
|
|
29
t/podcast.t
29
t/podcast.t
|
@ -9,13 +9,28 @@ BEGIN {
|
|||
"XML::Feed and/or HTML::Parser or File::MimeInfo not available"};
|
||||
}
|
||||
else {
|
||||
eval q{use Test::More tests => 136};
|
||||
eval q{use Test::More tests => 137};
|
||||
}
|
||||
}
|
||||
|
||||
use Cwd;
|
||||
use File::Basename;
|
||||
|
||||
my $installed = $ENV{INSTALLED_TESTS};
|
||||
|
||||
my @base_command;
|
||||
if ($installed) {
|
||||
ok(1, "running installed");
|
||||
@base_command = qw(ikiwiki);
|
||||
}
|
||||
else {
|
||||
ok(! system("make -s ikiwiki.out"));
|
||||
@base_command = qw(perl -I. ./ikiwiki.out
|
||||
--underlaydir=underlays/basewiki
|
||||
--set underlaydirbase=underlays
|
||||
--templatedir=templates);
|
||||
}
|
||||
|
||||
my $tmp = 't/tmp';
|
||||
my $statedir = 't/tinypodcast/.ikiwiki';
|
||||
|
||||
|
@ -23,9 +38,7 @@ sub podcast {
|
|||
my $podcast_style = shift;
|
||||
|
||||
my $baseurl = 'http://example.com';
|
||||
my @command = (qw(./ikiwiki.out --plugin inline --rss --atom));
|
||||
push @command, qw(-underlaydir=underlays/basewiki);
|
||||
push @command, qw(-set underlaydirbase=underlays --templatedir=templates);
|
||||
my @command = (@base_command, qw(--plugin inline --rss --atom));
|
||||
push @command, "--url=$baseurl", qw(t/tinypodcast), "$tmp/out";
|
||||
|
||||
ok(! system("mkdir $tmp"),
|
||||
|
@ -113,9 +126,7 @@ sub podcast {
|
|||
}
|
||||
|
||||
sub single_page_html {
|
||||
my @command = (qw(./ikiwiki.out));
|
||||
push @command, qw(-underlaydir=underlays/basewiki);
|
||||
push @command, qw(-set underlaydirbase=underlays --templatedir=templates);
|
||||
my @command = @base_command;
|
||||
push @command, qw(t/tinypodcast), "$tmp/out";
|
||||
|
||||
ok(! system("mkdir $tmp"),
|
||||
|
@ -158,9 +169,7 @@ sub single_page_html {
|
|||
}
|
||||
|
||||
sub inlined_pages_html {
|
||||
my @command = (qw(./ikiwiki.out --plugin inline));
|
||||
push @command, qw(-underlaydir=underlays/basewiki);
|
||||
push @command, qw(-set underlaydirbase=underlays --templatedir=templates);
|
||||
my @command = (@base_command, qw(--plugin inline));
|
||||
push @command, qw(t/tinypodcast), "$tmp/out";
|
||||
|
||||
ok(! system("mkdir $tmp"),
|
||||
|
|
|
@ -16,6 +16,20 @@ use Errno qw(ENOENT);
|
|||
|
||||
# Black-box (ish) test for relative linking between CGI and static content
|
||||
|
||||
my $installed = $ENV{INSTALLED_TESTS};
|
||||
|
||||
my @command;
|
||||
if ($installed) {
|
||||
@command = qw(ikiwiki);
|
||||
}
|
||||
else {
|
||||
ok(! system("make -s ikiwiki.out"));
|
||||
@command = qw(perl -I. ./ikiwiki.out
|
||||
--underlaydir=underlays/basewiki
|
||||
--set underlaydirbase=underlays
|
||||
--templatedir=templates);
|
||||
}
|
||||
|
||||
sub parse_cgi_content {
|
||||
my $content = shift;
|
||||
my %bits;
|
||||
|
@ -53,7 +67,6 @@ sub write_setup_file {
|
|||
wikiname: this is the name of my wiki
|
||||
srcdir: t/tmp/in
|
||||
destdir: t/tmp/out
|
||||
templatedir: templates
|
||||
$urlline
|
||||
cgiurl: $args{cgiurl}
|
||||
$w3mmodeline
|
||||
|
@ -71,7 +84,7 @@ EOF
|
|||
|
||||
sub thoroughly_rebuild {
|
||||
ok(unlink("t/tmp/ikiwiki.cgi") || $!{ENOENT});
|
||||
ok(! system("./ikiwiki.out --setup t/tmp/test.setup --rebuild --wrappers"));
|
||||
ok(! system(@command, qw(--setup t/tmp/test.setup --rebuild --wrappers)));
|
||||
}
|
||||
|
||||
sub check_cgi_mode_bits {
|
||||
|
@ -131,7 +144,6 @@ sub run_cgi {
|
|||
}
|
||||
|
||||
sub test_startup {
|
||||
ok(! system("make -s ikiwiki.out"));
|
||||
ok(! system("rm -rf t/tmp"));
|
||||
ok(! system("mkdir t/tmp"));
|
||||
|
||||
|
|
|
@ -3,6 +3,8 @@ use warnings;
|
|||
use strict;
|
||||
use Test::More;
|
||||
|
||||
plan(skip_all => 'running installed') if $ENV{INSTALLED_TESTS};
|
||||
|
||||
my @progs="ikiwiki.in";
|
||||
my @libs="IkiWiki.pm";
|
||||
# monotone, external, amazon_s3, po, and cvs
|
||||
|
|
|
@ -3,6 +3,8 @@ use warnings;
|
|||
use strict;
|
||||
use Test::More;
|
||||
|
||||
plan(skip_all => 'running installed') if $ENV{INSTALLED_TESTS};
|
||||
|
||||
my @templates=(glob("templates/*.tmpl"), glob("doc/templates/*.mdwn"));
|
||||
plan(tests => 2*@templates);
|
||||
|
||||
|
|
|
@ -1,7 +1,9 @@
|
|||
#!/usr/bin/perl
|
||||
use warnings;
|
||||
use strict;
|
||||
use Test::More 'no_plan';
|
||||
use Test::More;
|
||||
|
||||
plan(skip_all => 'running installed') if $ENV{INSTALLED_TESTS};
|
||||
|
||||
$/=undef;
|
||||
open(IN, "doc/templates.mdwn") || die "doc/templates.mdwn: $!";
|
||||
|
@ -12,3 +14,5 @@ foreach my $file (glob("templates/*.tmpl")) {
|
|||
$file=~s/templates\///;
|
||||
ok($page =~ /\Q$file\E/, "$file documented on doc/templates.mdwn");
|
||||
}
|
||||
|
||||
done_testing();
|
||||
|
|
33
t/trail.t
33
t/trail.t
|
@ -1,7 +1,7 @@
|
|||
#!/usr/bin/perl
|
||||
use warnings;
|
||||
use strict;
|
||||
use Test::More 'no_plan';
|
||||
use Test::More;
|
||||
use IkiWiki;
|
||||
|
||||
sub check_trail {
|
||||
|
@ -27,6 +27,24 @@ my $blob;
|
|||
ok(! system("rm -rf t/tmp"));
|
||||
ok(! system("mkdir t/tmp"));
|
||||
|
||||
my $installed = $ENV{INSTALLED_TESTS};
|
||||
|
||||
my @command;
|
||||
if ($installed) {
|
||||
@command = qw(ikiwiki);
|
||||
}
|
||||
else {
|
||||
ok(! system("make -s ikiwiki.out"));
|
||||
@command = qw(perl -I. ./ikiwiki.out
|
||||
--underlaydir=underlays/basewiki
|
||||
--set underlaydirbase=underlays
|
||||
--templatedir=templates);
|
||||
}
|
||||
|
||||
push @command, qw(--set usedirs=0 --plugin trail --plugin inline
|
||||
--url=http://example.com --cgiurl=http://example.com/ikiwiki.cgi
|
||||
--rss --atom t/tmp/in t/tmp/out --verbose);
|
||||
|
||||
# Write files with a date in the past, so that when we refresh,
|
||||
# the update is detected.
|
||||
sub write_old_file {
|
||||
|
@ -129,13 +147,8 @@ write_old_file("wind_in_the_willows.mdwn", <<EOF
|
|||
EOF
|
||||
);
|
||||
|
||||
ok(! system("make -s ikiwiki.out"));
|
||||
|
||||
my $command = "perl -I. ./ikiwiki.out --set usedirs=0 --plugin trail --plugin inline --url=http://example.com --cgiurl=http://example.com/ikiwiki.cgi --rss --atom --underlaydir=underlays/basewiki --set underlaydirbase=underlays --templatedir=templates t/tmp/in t/tmp/out --verbose";
|
||||
|
||||
ok(! system($command));
|
||||
|
||||
ok(! system("$command --refresh"));
|
||||
ok(! system(@command));
|
||||
ok(! system(@command, "--refresh"));
|
||||
|
||||
$blob = readfile("t/tmp/out/meme.html");
|
||||
ok($blob =~ /<a href="(\.\/)?badger.html">badger<\/a>/m);
|
||||
|
@ -232,7 +245,7 @@ writefile("limited/c.mdwn", "t/tmp/in", '[[!meta title="New C page"]]c');
|
|||
|
||||
writefile("untrail.mdwn", "t/tmp/in", "no longer a trail");
|
||||
|
||||
ok(! system("$command --refresh"));
|
||||
ok(! system(@command, "--refresh"));
|
||||
|
||||
check_trail("add/a.html", "n=add/b p=");
|
||||
check_trail("add/b.html", "n=add/c p=add/a");
|
||||
|
@ -290,3 +303,5 @@ check_no_trail("untrail/a.html");
|
|||
check_no_trail("untrail/b.html");
|
||||
|
||||
ok(! system("rm -rf t/tmp"));
|
||||
|
||||
done_testing();
|
||||
|
|
|
@ -5,6 +5,8 @@ use Cwd qw();
|
|||
use File::Find;
|
||||
use Test::More;
|
||||
|
||||
plan(skip_all => 'running installed') if $ENV{INSTALLED_TESTS};
|
||||
|
||||
plan(skip_all => "XML::Parser not available")
|
||||
unless eval q{use XML::Parser (); 1;};
|
||||
|
||||
|
|
Loading…
Reference in New Issue