From d42ed9bdc3e4c4875e6fcf2f5e5ffe71652a51ee Mon Sep 17 00:00:00 2001 From: Amitai Schlair Date: Sat, 15 Aug 2015 23:29:54 -0400 Subject: Test many behaviors of the meta directive. --- t/meta.t | 159 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 159 insertions(+) create mode 100644 t/meta.t (limited to 't/meta.t') diff --git a/t/meta.t b/t/meta.t new file mode 100644 index 000000000..ab25c2f83 --- /dev/null +++ b/t/meta.t @@ -0,0 +1,159 @@ +#!/usr/bin/perl +use warnings; +use strict; +use Test::More; +use IkiWiki; + +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); +push @command, $srcdir, $destdir; + +sub write_build_read_compare { + my ($pagename, $input, $expected_output) = @_; + ok(! system("mkdir -p $srcdir"), q{setup}); + writefile("$pagename.mdwn", $srcdir, $input); + ok(! system(@command), q{build}); + like(readfile("$destdir/$pagename/index.html"), $expected_output); + ok(! system("rm -rf $tmp"), q{teardown}); +} + +write_build_read_compare( + 'title', + q{[[!meta title="a page about bar"]]}, + qr{a page about bar}, +); + +write_build_read_compare( + 'description', + q{[[!meta description="a page about bar"]]}, + qr{}, +); + +write_build_read_compare( + 'guid', + q{[[!meta guid="12345"]]}, + qr{}, +); + +write_build_read_compare( + 'license', + q{[[!meta license="you get to keep both pieces"]]}, + qr{
}, +); + +write_build_read_compare( + 'copyright', + q{[[!meta copyright="12345"]]}, + qr{