From: Joey Hess Date: Sun, 27 Jul 2008 02:27:08 +0000 (-0400) Subject: Version control backends promoted to first-class plugins X-Git-Tag: 2.60~174 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=14cd75746a2c73b50548b6fdb3583d536b6ef9bd;p=ikiwiki.git Version control backends promoted to first-class plugins --- diff --git a/IkiWiki/Rcs/bzr.pm b/IkiWiki/Plugin/bzr.pm similarity index 100% rename from IkiWiki/Rcs/bzr.pm rename to IkiWiki/Plugin/bzr.pm diff --git a/IkiWiki/Rcs/git.pm b/IkiWiki/Plugin/git.pm similarity index 100% rename from IkiWiki/Rcs/git.pm rename to IkiWiki/Plugin/git.pm diff --git a/IkiWiki/Rcs/mercurial.pm b/IkiWiki/Plugin/mercurial.pm similarity index 100% rename from IkiWiki/Rcs/mercurial.pm rename to IkiWiki/Plugin/mercurial.pm diff --git a/IkiWiki/Rcs/monotone.pm b/IkiWiki/Plugin/monotone.pm similarity index 100% rename from IkiWiki/Rcs/monotone.pm rename to IkiWiki/Plugin/monotone.pm diff --git a/IkiWiki/Rcs/Stub.pm b/IkiWiki/Plugin/norcs.pm similarity index 100% rename from IkiWiki/Rcs/Stub.pm rename to IkiWiki/Plugin/norcs.pm diff --git a/IkiWiki/Rcs/svn.pm b/IkiWiki/Plugin/svn.pm similarity index 100% rename from IkiWiki/Rcs/svn.pm rename to IkiWiki/Plugin/svn.pm diff --git a/IkiWiki/Rcs/tla.pm b/IkiWiki/Plugin/tla.pm similarity index 100% rename from IkiWiki/Rcs/tla.pm rename to IkiWiki/Plugin/tla.pm diff --git a/t/bzr.t b/t/bzr.t deleted file mode 100755 index 29bab2fab..000000000 --- a/t/bzr.t +++ /dev/null @@ -1,90 +0,0 @@ -#!/usr/bin/perl -use warnings; -use strict; - -my $dir; -my $bzrrepo; -BEGIN { - $dir="/tmp/ikiwiki-test-bzr.$$"; - $bzrrepo="$dir/repo"; - my $bzr=`which bzr`; - chomp $bzr; - if (! -x $bzr || ! mkdir($dir) || ! mkdir($bzrrepo)) { - eval q{ - use Test::More skip_all => "bzr not available or could not make test dirs" - } - } -} -use Test::More tests => 16; - -BEGIN { use_ok("IkiWiki"); } - -%config=IkiWiki::defaultconfig(); -$config{rcs} = "bzr"; -$config{srcdir} = $bzrrepo; -IkiWiki::checkconfig(); - -system "bzr init $bzrrepo >/dev/null 2>&1"; -system "cd $bzrrepo && echo dummy > dummy; bzr add dummy >/dev/null 2>&1"; -system "cd $bzrrepo && bzr commit -m Initial >/dev/null 2>&1"; - -my @changes; -@changes = IkiWiki::rcs_recentchanges(3); - -is($#changes, 0); # counts for dummy commit during repo creation -is($changes[0]{message}[0]{"line"}, "Initial"); -is($changes[0]{pages}[0]{"page"}, "dummy"); - -# Web commit -my $test1 = readfile("t/test1.mdwn"); -writefile('test1.mdwn', $config{srcdir}, $test1); -IkiWiki::rcs_add("test1.mdwn"); -IkiWiki::rcs_commit("test1.mdwn", "Added the first page", "moo"); - -@changes = IkiWiki::rcs_recentchanges(3); - -is($#changes, 1); -is($changes[0]{message}[0]{"line"}, "Added the first page"); -is($changes[0]{pages}[0]{"page"}, "test1.mdwn"); - -# Manual commit -my $message = "Added the second page"; - -my $test2 = readfile("t/test2.mdwn"); -writefile('test2.mdwn', $config{srcdir}, $test2); -system "cd $config{srcdir}; bzr add test2.mdwn >/dev/null 2>&1"; -system "cd $config{srcdir}; bzr commit -m \"$message\" test2.mdwn >/dev/null 2>&1"; - -@changes = IkiWiki::rcs_recentchanges(3); - -is($#changes, 2); -is($changes[0]{message}[0]{"line"}, $message); -is($changes[0]{pages}[0]{"page"}, "test2.mdwn"); - -is($changes[1]{pages}[0]{"page"}, "test1.mdwn"); - -# Renaming - -writefile('test3.mdwn', $config{srcdir}, $test1); -IkiWiki::rcs_add("test3.mdwn"); -IkiWiki::rcs_rename("test3.mdwn", "test4.mdwn"); -IkiWiki::rcs_commit_staged("Added the 4th page", "moo", "Joe User"); - -@changes = IkiWiki::rcs_recentchanges(4); - -is($#changes, 3); -is($changes[0]{pages}[0]{"page"}, "test4.mdwn"); - -ok(mkdir($config{srcdir}."/newdir")); -IkiWiki::rcs_rename("test4.mdwn", "newdir/test5.mdwn"); -IkiWiki::rcs_commit_staged("Added the 5th page", "moo", "Joe User"); - -@changes = IkiWiki::rcs_recentchanges(4); - -is($#changes, 3); -is($changes[0]{pages}[0]{"page"}, "newdir/test5.mdwn"); - -IkiWiki::rcs_remove("newdir/test5.mdwn"); -IkiWiki::rcs_commit_staged("Remove the 5th page", "moo", "Joe User"); - -system "rm -rf $dir";