From 14cd75746a2c73b50548b6fdb3583d536b6ef9bd Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Sat, 26 Jul 2008 22:27:08 -0400 Subject: [PATCH] Version control backends promoted to first-class plugins --- IkiWiki/{Rcs => Plugin}/bzr.pm | 0 IkiWiki/{Rcs => Plugin}/git.pm | 0 IkiWiki/{Rcs => Plugin}/mercurial.pm | 0 IkiWiki/{Rcs => Plugin}/monotone.pm | 0 IkiWiki/{Rcs/Stub.pm => Plugin/norcs.pm} | 0 IkiWiki/{Rcs => Plugin}/svn.pm | 0 IkiWiki/{Rcs => Plugin}/tla.pm | 0 t/bzr.t | 90 ------------------------ 8 files changed, 90 deletions(-) rename IkiWiki/{Rcs => Plugin}/bzr.pm (100%) rename IkiWiki/{Rcs => Plugin}/git.pm (100%) rename IkiWiki/{Rcs => Plugin}/mercurial.pm (100%) rename IkiWiki/{Rcs => Plugin}/monotone.pm (100%) rename IkiWiki/{Rcs/Stub.pm => Plugin/norcs.pm} (100%) rename IkiWiki/{Rcs => Plugin}/svn.pm (100%) rename IkiWiki/{Rcs => Plugin}/tla.pm (100%) delete mode 100755 t/bzr.t 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"; -- 2.26.2