user/dev discussion of public-inbox itself
 help / color / Atom feed
From: Eric Wong <e@80x24.org>
To: meta@public-inbox.org
Subject: [PATCH v2 4/4] tests: get rid of unnecessary Cwd module use
Date: Tue, 14 May 2019 04:02:21 +0000
Message-ID: <20190514040221.GA29464@ailurophile> (raw)
In-Reply-To: <20190514033203.6160-5-e@80x24.org>

We only need it for tests that chdir, and maybe for ENV{PATH}
portability (dash seems fine, not sure about others).

v2: revert change to solver_git.t for FreeBSD 11.2 and document
---
Interdiff:
  diff --git a/t/solver_git.t b/t/solver_git.t
  index 5e0d132..0b7d7c4 100644
  --- a/t/solver_git.t
  +++ b/t/solver_git.t
  @@ -4,6 +4,7 @@ use strict;
   use warnings;
   use Test::More;
   use File::Temp qw(tempdir);
  +use Cwd qw(abs_path);
   require './t/common.perl';
   require_git(2.6);
   
  @@ -16,6 +17,9 @@ foreach my $mod (@mods) {
   chomp(my $git_dir = `git rev-parse --git-dir 2>/dev/null`);
   plan skip_all => "$0 must be run from a git working tree" if $?;
   
  +# needed for alternates, and --absolute-git-dir is only in git 2.13+
  +$git_dir = abs_path($git_dir);
  +
   use_ok "PublicInbox::$_" for (qw(Inbox V2Writable MIME Git SolverGit));
   
   my $mainrepo = tempdir('pi-solver-XXXXXX', TMPDIR => 1, CLEANUP => 1);

 t/admin.t           | 1 -
 t/cgi.t             | 1 -
 t/git.t             | 5 ++---
 t/httpd-corner.t    | 3 +--
 t/httpd-unix.t      | 3 +--
 t/httpd.t           | 1 -
 t/mda.t             | 2 +-
 t/nntpd.t           | 1 -
 t/solver_git.t      | 2 ++
 t/spamcheck_spamc.t | 1 -
 10 files changed, 7 insertions(+), 13 deletions(-)

diff --git a/t/admin.t b/t/admin.t
index cc1e65d..b5a4383 100644
--- a/t/admin.t
+++ b/t/admin.t
@@ -4,7 +4,6 @@ use strict;
 use warnings;
 use Test::More;
 use File::Temp qw(tempdir);
-# use Cwd qw(getcwd);
 use_ok 'PublicInbox::Admin', qw(resolve_repo_dir);
 my $tmpdir = tempdir('pi-admin.XXXXXX', TMPDIR => 1, CLEANUP => 1);
 my $git_dir = "$tmpdir/v1";
diff --git a/t/cgi.t b/t/cgi.t
index aedd79e..b24bbc4 100644
--- a/t/cgi.t
+++ b/t/cgi.t
@@ -7,7 +7,6 @@ use warnings;
 use Test::More;
 use Email::MIME;
 use File::Temp qw/tempdir/;
-use Cwd;
 eval { require IPC::Run };
 plan skip_all => "missing IPC::Run for t/cgi.t" if $@;
 
diff --git a/t/git.t b/t/git.t
index 5b612b8..7edf82b 100644
--- a/t/git.t
+++ b/t/git.t
@@ -5,7 +5,6 @@ use warnings;
 use Test::More;
 use File::Temp qw/tempdir/;
 my $dir = tempdir('pi-git-XXXXXX', TMPDIR => 1, CLEANUP => 1);
-use Cwd qw/getcwd/;
 use PublicInbox::Spawn qw(popen_rd);
 
 eval { require IPC::Run } or plan skip_all => 'IPC::Run missing';
@@ -15,7 +14,7 @@ use_ok 'PublicInbox::Git';
 	is(system(qw(git init -q --bare), $dir), 0, 'created git directory');
 	my $cmd = [ 'git', "--git-dir=$dir", 'fast-import', '--quiet' ];
 
-	my $fi_data = getcwd().'/t/git.fast-import-data';
+	my $fi_data = './t/git.fast-import-data';
 	ok(-r $fi_data, "fast-import data readable (or run test at top level)");
 	IPC::Run::run($cmd, '<', $fi_data);
 	is($?, 0, 'fast-import succeeded');
@@ -68,7 +67,7 @@ if (1) {
 	my $cmd = [ 'git', "--git-dir=$dir", qw(hash-object -w --stdin) ];
 
 	# need a big file, use the AGPL-3.0 :p
-	my $big_data = getcwd().'/COPYING';
+	my $big_data = './COPYING';
 	ok(-r $big_data, 'COPYING readable');
 	my $size = -s $big_data;
 	ok($size > 8192, 'file is big enough');
diff --git a/t/httpd-corner.t b/t/httpd-corner.t
index bfa3920..7c21994 100644
--- a/t/httpd-corner.t
+++ b/t/httpd-corner.t
@@ -15,7 +15,6 @@ foreach my $mod (qw(Plack::Util Plack::Builder
 
 use Digest::SHA qw(sha1_hex);
 use File::Temp qw/tempdir/;
-use Cwd qw/getcwd/;
 use IO::Socket;
 use IO::Socket::UNIX;
 use Fcntl qw(:seek);
@@ -28,7 +27,7 @@ ok(defined mkfifo($fifo, 0777), 'created FIFO');
 my $err = "$tmpdir/stderr.log";
 my $out = "$tmpdir/stdout.log";
 my $httpd = 'blib/script/public-inbox-httpd';
-my $psgi = getcwd()."/t/httpd-corner.psgi";
+my $psgi = "./t/httpd-corner.psgi";
 my %opts = (
 	LocalAddr => '127.0.0.1',
 	ReuseAddr => 1,
diff --git a/t/httpd-unix.t b/t/httpd-unix.t
index 2ef64df..758277c 100644
--- a/t/httpd-unix.t
+++ b/t/httpd-unix.t
@@ -12,11 +12,10 @@ foreach my $mod (qw(Plack::Util Plack::Builder HTTP::Date HTTP::Status)) {
 
 use File::Temp qw/tempdir/;
 use IO::Socket::UNIX;
-use Cwd qw/getcwd/;
 my $tmpdir = tempdir('httpd-unix-XXXXXX', TMPDIR => 1, CLEANUP => 1);
 my $unix = "$tmpdir/unix.sock";
 my $httpd = 'blib/script/public-inbox-httpd';
-my $psgi = getcwd() . '/t/httpd-corner.psgi';
+my $psgi = './t/httpd-corner.psgi';
 my $out = "$tmpdir/out.log";
 my $err = "$tmpdir/err.log";
 
diff --git a/t/httpd.t b/t/httpd.t
index d55495f..c061031 100644
--- a/t/httpd.t
+++ b/t/httpd.t
@@ -9,7 +9,6 @@ foreach my $mod (qw(Plack::Util Plack::Builder HTTP::Date HTTP::Status)) {
 	plan skip_all => "$mod missing for httpd.t" if $@;
 }
 use File::Temp qw/tempdir/;
-use Cwd qw/getcwd/;
 use IO::Socket::INET;
 require './t/common.perl';
 
diff --git a/t/mda.t b/t/mda.t
index 5dbcec6..966600a 100644
--- a/t/mda.t
+++ b/t/mda.t
@@ -5,7 +5,7 @@ use warnings;
 use Test::More;
 use Email::MIME;
 use File::Temp qw/tempdir/;
-use Cwd;
+use Cwd qw(getcwd);
 use PublicInbox::MID qw(mid2path);
 eval { require IPC::Run };
 plan skip_all => "missing IPC::Run for t/mda.t" if $@;
diff --git a/t/nntpd.t b/t/nntpd.t
index ec0a621..b8a84a0 100644
--- a/t/nntpd.t
+++ b/t/nntpd.t
@@ -9,7 +9,6 @@ foreach my $mod (qw(DBD::SQLite Search::Xapian)) {
 }
 require PublicInbox::SearchIdx;
 require PublicInbox::Msgmap;
-use Cwd;
 use Email::Simple;
 use IO::Socket;
 use Socket qw(IPPROTO_TCP TCP_NODELAY);
diff --git a/t/solver_git.t b/t/solver_git.t
index 6f0ce77..0b7d7c4 100644
--- a/t/solver_git.t
+++ b/t/solver_git.t
@@ -16,6 +16,8 @@ foreach my $mod (@mods) {
 }
 chomp(my $git_dir = `git rev-parse --git-dir 2>/dev/null`);
 plan skip_all => "$0 must be run from a git working tree" if $?;
+
+# needed for alternates, and --absolute-git-dir is only in git 2.13+
 $git_dir = abs_path($git_dir);
 
 use_ok "PublicInbox::$_" for (qw(Inbox V2Writable MIME Git SolverGit));
diff --git a/t/spamcheck_spamc.t b/t/spamcheck_spamc.t
index 7016e8b..70de14b 100644
--- a/t/spamcheck_spamc.t
+++ b/t/spamcheck_spamc.t
@@ -3,7 +3,6 @@
 use strict;
 use warnings;
 use Test::More;
-use Cwd;
 use Email::Simple;
 use IO::File;
 use File::Temp qw/tempdir/;
-- 
EW

      reply index

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-05-14  3:31 [PATCH 0/4] test loading cleanups Eric Wong
2019-05-14  3:32 ` [PATCH 1/4] tests: remove unnecessary loading of ::DS and Socket Eric Wong
2019-05-14  3:32 ` [PATCH 2/4] t/config.t: remove Data::Dumper dependency Eric Wong
2019-05-14  3:32 ` [PATCH 3/4] t/nntp.t: skip if Data::Dumper is missing Eric Wong
2019-05-14  3:32 ` [PATCH 4/4] tests: get rid of unnecessary Cwd module use Eric Wong
2019-05-14  4:02   ` Eric Wong [this message]

Reply instructions:

You may reply publically to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: http://public-inbox.org/README

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20190514040221.GA29464@ailurophile \
    --to=e@80x24.org \
    --cc=meta@public-inbox.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

user/dev discussion of public-inbox itself

Archives are clonable:
	git clone --mirror http://public-inbox.org/meta
	git clone --mirror http://czquwvybam4bgbro.onion/meta
	git clone --mirror http://hjrcffqmbrq6wope.onion/meta
	git clone --mirror http://ou63pmih66umazou.onion/meta

Newsgroups are available over NNTP:
	nntp://news.public-inbox.org/inbox.comp.mail.public-inbox.meta
	nntp://ou63pmih66umazou.onion/inbox.comp.mail.public-inbox.meta
	nntp://czquwvybam4bgbro.onion/inbox.comp.mail.public-inbox.meta
	nntp://hjrcffqmbrq6wope.onion/inbox.comp.mail.public-inbox.meta
	nntp://news.gmane.org/gmane.mail.public-inbox.general

 note: .onion URLs require Tor: https://www.torproject.org/

AGPL code for this site: git clone https://public-inbox.org/ public-inbox