From 98553d15375a373bd769b82cea24b48ee9613662 Mon Sep 17 00:00:00 2001 From: Amitai Schlair Date: Thu, 10 Sep 2009 00:51:34 -0400 Subject: CVS operations generally need to be within CVS checkouts, so these chdir() calls are warranted. They shouldn't modify the caller's working directory, though. Use File::chdir to keep the scope of the changes subroutine-local. The tests now pass without resetting the working directory. --- t/cvs.t | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) (limited to 't/cvs.t') diff --git a/t/cvs.t b/t/cvs.t index c3612ef8c..9df62334d 100755 --- a/t/cvs.t +++ b/t/cvs.t @@ -28,14 +28,11 @@ my $cvsrepo = "$dir/repo"; system "cvs -d $cvsrepo init >/dev/null"; system "mkdir $dir/ikiwiki >/dev/null"; -my $cwd = `pwd`; chomp $cwd; system "cd $dir/ikiwiki && cvs -d $cvsrepo import -m import ikiwiki VENDOR RELEASE >/dev/null"; -chdir $cwd; system "rm -rf $dir/ikiwiki >/dev/null"; system "cvs -d $cvsrepo co -d $config{srcdir} ikiwiki >/dev/null"; # Web commit -chdir $cwd; my $test1 = readfile("t/test1.mdwn"); writefile('test1.mdwn', $config{srcdir}, $test1); IkiWiki::rcs_add("test1.mdwn"); @@ -51,12 +48,10 @@ is($changes[0]{pages}[0]{"page"}, "test1"); # Manual commit my $message = "Added the second page"; -chdir $cwd; my $test2 = readfile("t/test2.mdwn"); writefile('test2.mdwn', $config{srcdir}, $test2); -chdir $config{srcdir}; -system "cvs add test2.mdwn >/dev/null 2>&1"; -system "cvs commit -m \"$message\" test2.mdwn >/dev/null"; +system "cd $config{srcdir} && cvs add test2.mdwn >/dev/null 2>&1"; +system "cd $config{srcdir} && cvs commit -m \"$message\" test2.mdwn >/dev/null"; @changes = IkiWiki::rcs_recentchanges(3); is($#changes, 1); -- cgit v1.2.3