add 2 failing test cases
authorJoey Hess <joey@kitenet.net>
Fri, 16 Jul 2010 20:10:44 +0000 (16:10 -0400)
committerJoey Hess <joey@kitenet.net>
Fri, 16 Jul 2010 20:11:24 +0000 (16:11 -0400)
t/replace.t

index 7d91f772f83849b8af7e8857389e456fa31ac062..04791d9f74a6697f577506b462aa3e51f63350f7 100755 (executable)
@@ -1,4 +1,5 @@
 #!/usr/bin/perl
+# Tests for bugs relating to replacing/renaming files in the srcdir.
 use warnings;
 use strict;
 use Test::More 'no_plan';
@@ -7,7 +8,6 @@ use Test::More 'no_plan';
 my $srcdir="t/tmp/src";
 my $destdir="t/tmp/dest";
 ok(! system("make -s ikiwiki.out"));
-ok(! system("mkdir -p $srcdir"));
 
 # runs ikiwiki to build test site
 sub runiki {
@@ -20,15 +20,34 @@ sub setupiki {
        ok(! system("rm -rf $srcdir/.ikiwiki $destdir"));
        runiki("--rebuild");
 }
+sub newsrcdir {
+       ok(! system("rm -rf $srcdir $destdir"));
+       ok(! system("mkdir -p $srcdir"));
+}
 
 # At one point, changing the extension of the source file of a page caused
 # ikiwiki to fail.
+newsrcdir();
 ok(! system("touch $srcdir/foo.mdwn"));
 setupiki();
 ok(! system("mv $srcdir/foo.mdwn $srcdir/foo.html"));
 refreshiki();
+ok(! system("mv $srcdir/foo.html $srcdir/foo.mdwn"));
+refreshiki();
 
 # Changing a non-page file into a page could also cause ikiwiki to fail.
+newsrcdir();
+ok(! system("touch $srcdir/foo"));
+setupiki();
+ok(! system("mv $srcdir/foo $srcdir/foo.mdwn"));
+refreshiki();
+
+# Changing a page file into a non-page could also cause ikiwiki to fail.
+newsrcdir();
+ok(! system("touch $srcdir/foo.mdwn"));
+setupiki();
+ok(! system("mv $srcdir/foo.mdwn $srcdir/foo"));
+refreshiki();
 
 # cleanup
 ok(! system("rm -rf t/tmp"));