Re: [PATCH 4/4] Add a basic test case for git send-email, and fix some real bugs discovered.
- From
Alex Riesen <raa.lkml@gmail.com>
- Date
- May 30, 2006, 13:23 UTC
- Message-ID
- <81b0412b0605300623h4f915829yb388c8fdc062c009@mail.gmail.com>
- In-Reply-To
- <7vu0782e33.fsf@assigned-by-dhcp.cox.net>
Show 7 quoted lines
> --- a/git-send-email.perl
> +++ b/git-send-email.perl
> @@ -387,7 +387,9 @@ X-Mailer: git-send-email $gitversion
> my $pid = open my $sm, '|-';
> defined $pid or die $!;
> if (!$pid) {
> - exec($smtp_server,'-i',@recipients) or die $!;This construction (perl pipe+fork) will not work on ActiveState Perl (it does not even parse the construct). Last time the problem arised it was suggested to replace readers with "qx{command}". Regretfully there were no writer case back then. I'd suggest using IPC::Open2 for portability. Like this:
use IPC::Open2;
my $fw;
my $pid = open2(">&1", $fw, "perl", "-w");
print $fw "exit 0\n";
close($fw);'But I wont. It was never portable in windows, no matter how hard I tried. The best result was getting output from "cat -v", but "cat" froze afterwards anyway, as "wc" or "perl" did. Besides, it the command often freezes that poor imitation of xterm windows has.
There is also 2-argument "open" with damn careful quoting, if anyone cares (dont think anyone does, for windows). How about disabling the test on cygwin? (patch attached).
--- t/t9001-send-email.sh | 7 +++++++ 1 files changed, 7 insertions(+), 0 deletions(-)
diff --git a/t/t9001-send-email.sh b/t/t9001-send-email.sh index a61da1e..c3a3737 100755 --- a/t/t9001-send-email.sh +++ b/t/t9001-send-email.sh @@ -25,6 +25,11 @@ test_expect_success \ git add fake.sendmail GIT_AUTHOR_NAME="A" git commit -a -m "Second."' +if test "$(uname -o)" = Cygwin; then + say "git-send-mail tests disabled on Windows" + # because of windows being such a crap +else + test_expect_success \ 'Extract patches and send' \ 'git format-patch -n HEAD^1 @@ -38,4 +43,6 @@ test_expect_success \ 'Verify commandline' \ 'diff commandline expected' +fi + test_done
-- 1.3.3.g7994