delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp-workers/2001/04/24/04:30:23

Sender: rich AT phekda DOT freeserve DOT co DOT uk
Message-ID: <3AE1C3E5.48286A98@phekda.freeserve.co.uk>
Date: Sat, 21 Apr 2001 18:31:17 +0100
From: Richard Dawe <rich AT phekda DOT freeserve DOT co DOT uk>
X-Mailer: Mozilla 4.77 [en] (X11; U; Linux 2.2.17 i586)
X-Accept-Language: de,fr
MIME-Version: 1.0
To: Jim Meyering <jim AT meyering DOT net>
CC: DJGPP workers <djgpp-workers AT delorie DOT com>
Subject: Re: (Fileutils) More test suite & Fetish.pm problems
References: <3AE1927A DOT 261002F1 AT phekda DOT freeserve DOT co DOT uk> <urysnj2gwrb DOT fsf AT ixi DOT eng DOT ascend DOT com>
Reply-To: djgpp-workers AT delorie DOT com

Hello.

Jim Meyering wrote:
> 
> Richard Dawe <rich AT phekda DOT freeserve DOT co DOT uk> wrote:
> | Essentially there seems to be a difference in behaviour between DJGPP
> | and Unix when executing programs using the path.
[snip]
> I know this was a problem in 4.0, and I fixed it in at least some cases.
> Maybe I missed some.  Please show me which tests fail (and how) and I'll
> take a look.

The tests that fail are:

dircolors/simple
ls-2/quoting
mv/i-1

These are the only tests that use Fetish.pm. They fail when comparing
expected and returned stderr - like so:

    -: test a: stderr mismatch, comparing a.1 and a.E

Below is a diff that fixes the problems. Please note that the Makefile.am
files also have changes for:

* MS-DOS using ';' as the path separator;
* the cases where I renamed tests to fit the 8+3 convention.

With these fixes (plus the Fetish.pm fix we talked about before) these
tests pass.

> You really should be using the latest test release :-)
> 4.0 is way too old and has several known bugs, as I'm sure you now know.

Since the port of 4.0 is very nearly done, I want to get it finished,
before I move onto looking at 4.0.43. Hopefully I will get some time
during the week or next weekend to look at 4.0.43.

Thanks, bye, Rich =]

-- 
Richard Dawe
http://www.phekda.freeserve.co.uk/richdawe/

*** /develop/ports/orig/fileutils-4.0/tests/dircolors/Makefile.am      
Sat Oct  3 06:53:40 1998
--- /develop/ports/gnu.dev/filutil4.0/tests/dircolors/Makefile.am      
Sat Apr 21 15:05:30 2001
*************** TESTS_ENVIRONMENT = \
*** 6,12 ****
    top_srcdir=$(top_srcdir) \
    srcdir=$(srcdir) \
    PERL="@PERL@" \
!   PATH=../../src:$$PATH \
!   PROG=dircolors
  
  TESTS = simple
--- 6,12 ----
    top_srcdir=$(top_srcdir) \
    srcdir=$(srcdir) \
    PERL="@PERL@" \
!   PATH="../../src;$$PATH" \
!   PROG=../../src/dircolors
  
  TESTS = simple
*** /develop/ports/orig/fileutils-4.0/tests/dircolors/simple    Sat Oct  3
06:52:02 1998
--- /develop/ports/gnu.dev/filutil4.0/tests/dircolors/simple    Sat Apr 21
15:04:40 2001
*************** require 5.003;
*** 15,20 ****
--- 15,21 ----
  use strict;
  
  (my $program_name = $0) =~ s|.*/||;
+ my $prog = $ENV{PROG} || die "$0: \$PROG not specified in
environment\n";
  
  # Turn off localisation of executable's ouput.
  @ENV{qw(LANGUAGE LANG LC_ALL)} = ('C') x 3;
*************** use strict;
*** 22,35 ****
  my @Tests =
      (
       ['a', {IN => {k => "exec\n"}},
!       {ERR => "dircolors: k:1: invalid line;  missing second token\n"},
        {EXIT => 1}],
      );
  
  my $save_temps = $ENV{DEBUG};
  my $verbose = $ENV{VERBOSE};
  
- my $prog = $ENV{PROG} || die "$0: \$PROG not specified in
environment\n";
  my $fail = run_tests ($program_name, $prog, \@Tests, $save_temps,
$verbose);
  exit $fail;
  EOF
--- 23,35 ----
  my @Tests =
      (
       ['a', {IN => {k => "exec\n"}},
!       {ERR => "$prog: k:1: invalid line;  missing second token\n"},
        {EXIT => 1}],
      );
  
  my $save_temps = $ENV{DEBUG};
  my $verbose = $ENV{VERBOSE};
  
  my $fail = run_tests ($program_name, $prog, \@Tests, $save_temps,
$verbose);
  exit $fail;
  EOF
*** /develop/ports/orig/fileutils-4.0/tests/ls-2/Makefile.am    Sat Oct  3
06:57:58 1998
--- /develop/ports/gnu.dev/filutil4.0/tests/ls-2/Makefile.am    Sat Apr 21
15:07:48 2001
*************** TESTS_ENVIRONMENT = \
*** 6,12 ****
    top_srcdir=$(top_srcdir) \
    srcdir=$(srcdir) \
    PERL="@PERL@" \
!   PATH=../../src:$$PATH \
!   PROG=ls
  
  TESTS = quoting
--- 6,12 ----
    top_srcdir=$(top_srcdir) \
    srcdir=$(srcdir) \
    PERL="@PERL@" \
!   PATH="../../src;$$PATH" \
!   PROG=../../src/ls
  
  TESTS = quoting
*** /develop/ports/orig/fileutils-4.0/tests/ls-2/quoting        Sat Oct  3
06:57:42 1998
--- /develop/ports/gnu.dev/filutil4.0/tests/ls-2/quoting        Sat Apr 21
15:07:38 2001
*************** require 5.003;
*** 15,20 ****
--- 15,21 ----
  use strict;
  
  (my $program_name = $0) =~ s|.*/||;
+ my $prog = $ENV{PROG} || die "$0: \$PROG not specified in
environment\n";
  
  # Turn off localisation of executable's ouput.
  @ENV{qw(LANGUAGE LANG LC_ALL)} = ('C') x 3;
*************** my @Tests =
*** 47,53 ****
  my $save_temps = $ENV{SAVE_TEMPS};
  my $verbose = $ENV{VERBOSE};
  
- my $prog = $ENV{PROG} || die "$0: \$PROG not specified in
environment\n";
  my $fail = run_tests ($program_name, $prog, \@Tests, $save_temps,
$verbose);
  exit $fail;
  EOF
--- 48,53 ----
*** /develop/ports/orig/fileutils-4.0/tests/mv/Makefile.am      Mon Oct  5
05:33:14 1998
--- /develop/ports/gnu.dev/filutil4.0/tests/mv/Makefile.am      Sat Apr 21
15:05:56 2001
***************
*** 1,7 ****
  ## Process this file with automake to produce Makefile.in
-*-Makefile-*-.
  AUTOMAKE_OPTIONS = 1.3 gnits
  
! TESTS = mv-special-1 into-self into-self-2 backup-is-src i-1
  EXTRA_DIST = $(TESTS) setup
  TESTS_ENVIRONMENT = \
    DF=../../src/df \
--- 1,7 ----
  ## Process this file with automake to produce Makefile.in
-*-Makefile-*-.
  AUTOMAKE_OPTIONS = 1.3 gnits
  
! TESTS = mv-special-1 toself toself2 backup-is-src i-1
  EXTRA_DIST = $(TESTS) setup
  TESTS_ENVIRONMENT = \
    DF=../../src/df \
*************** TESTS_ENVIRONMENT = \
*** 13,17 ****
    RM=../../src/rm \
    TOUCH=../../src/touch \
    PERL="@PERL@" \
!   PATH=../../src:$$PATH \
!   PROG=mv
--- 13,17 ----
    RM=../../src/rm \
    TOUCH=../../src/touch \
    PERL="@PERL@" \
!   PATH="../../src;$$PATH" \
!   PROG=../../src/mv
*** /develop/ports/orig/fileutils-4.0/tests/mv/i-1      Sun Oct  4
03:04:48 1998
--- /develop/ports/gnu.dev/filutil4.0/tests/mv/i-1      Sat Apr 21
15:06:40 2001
*************** require 5.003;
*** 15,20 ****
--- 15,21 ----
  use strict;
  
  (my $program_name = $0) =~ s|.*/||;
+ my $prog = $ENV{PROG} || die "$0: \$PROG not specified in
environment\n";
  
  # Turn off localisation of executable's ouput.
  @ENV{qw(LANGUAGE LANG LC_ALL)} = ('C') x 3;
*************** my @Tests =
*** 26,32 ****
       # Make sure a `n' reply to `mv -i...' aborts the move operation.
       [$test_a, '-i',
        {IN => {src => "a\n"}}, {IN => {dst => "b\n"}}, '<', {IN =>
"n\n"},
!       {ERR => "mv: overwrite `dst'? "},
        {POST => sub { -r 'src' or die "test $test_a failed\n"}},
        {EXIT => 1},
       ],
--- 27,33 ----
       # Make sure a `n' reply to `mv -i...' aborts the move operation.
       [$test_a, '-i',
        {IN => {src => "a\n"}}, {IN => {dst => "b\n"}}, '<', {IN =>
"n\n"},
!       {ERR => "$prog: overwrite `dst'? "},
        {POST => sub { -r 'src' or die "test $test_a failed\n"}},
        {EXIT => 1},
       ],
*************** my @Tests =
*** 35,41 ****
  my $save_temps = $ENV{DEBUG};
  my $verbose = $ENV{VERBOSE};
  
- my $prog = $ENV{PROG} || die "$0: \$PROG not specified in
environment\n";
  my $fail = run_tests ($program_name, $prog, \@Tests, $save_temps,
$verbose);
  exit $fail;
  EOF
--- 36,41 ----

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019