You are viewing a plain text version of this content. The canonical link for it is here.
Posted to test-dev@httpd.apache.org by Joe Orton <jo...@redhat.com> on 2004/09/29 11:26:05 UTC

Re: cvs commit: httpd-test/perl-framework/t/protocol nntp-like.t

On Wed, Sep 29, 2004 at 06:53:42AM -0000, jerenkrantz@apache.org wrote:
> jerenkrantz    2004/09/28 23:53:42
> 
>   Modified:    perl-framework/c-modules/nntp_like mod_nntp_like.c
>                perl-framework/t/apache contentlength.t
>                perl-framework/t/protocol nntp-like.t
>   Log:
>   Fix up nntp-like and content-length tests to pass.

To pass against what httpd on what platform? They were passing on Linux
against 2.0 and HEAD.  But now they're not :) Against HEAD I now get:

t/apache/contentlength......# Failed test 2 in t/apache/contentlength.t at line 54
# Failed test 4 in t/apache/contentlength.t at line 54 fail #2
FAILED tests 2, 4
        Failed 2/20 tests, 90.00% okay

Yup, the t_cmp arguments were flipped a while back.

Re: cvs commit: httpd-test/perl-framework/t/protocol nntp-like.t

Posted by Justin Erenkrantz <ju...@erenkrantz.com>.
--On Wednesday, September 29, 2004 3:39 PM +0100 Joe Orton 
<jo...@redhat.com> wrote:

> OK, the difference is in the handling of an empty Content-Length header.
> The glibc strtoll does not return an error for an empty string, as C99
> requires, and so ap_http_filter treats it exactly as "Content-Length:
> 0".
>
> I guess the strto* on your platform does return an error for this case:
> I'd say a 400 is a better error than a 413 for "Content-Length:\r\n" but
> 413 is clearly better than 200, so I've fixed ap_http_filter in HEAD.

FWIW, I had failures with Darwin and FreeBSD (might have ran it on Solaris 
too, but can't recall).  Yah, expecting 200 was just plainly wrong in this 
case.  I do think 413 is a bit arbitrary, but is clearly more correct than 
200.  -- justin

Re: cvs commit: httpd-test/perl-framework/t/protocol nntp-like.t

Posted by Joe Orton <jo...@redhat.com>.
On Wed, Sep 29, 2004 at 10:26:05AM +0100, Joe Orton wrote:
> On Wed, Sep 29, 2004 at 06:53:42AM -0000, jerenkrantz@apache.org wrote:
> > jerenkrantz    2004/09/28 23:53:42
> > 
> >   Modified:    perl-framework/c-modules/nntp_like mod_nntp_like.c
> >                perl-framework/t/apache contentlength.t
> >                perl-framework/t/protocol nntp-like.t
> >   Log:
> >   Fix up nntp-like and content-length tests to pass.
> 
> To pass against what httpd on what platform? They were passing on Linux
> against 2.0 and HEAD.  But now they're not :) Against HEAD I now get:

OK, the difference is in the handling of an empty Content-Length header. 
The glibc strtoll does not return an error for an empty string, as C99
requires, and so ap_http_filter treats it exactly as "Content-Length:
0".

I guess the strto* on your platform does return an error for this case:
I'd say a 400 is a better error than a 413 for "Content-Length:\r\n" but
413 is clearly better than 200, so I've fixed ap_http_filter in HEAD.

joe

Re: cvs commit: httpd-test/perl-framework/t/protocol nntp-like.t

Posted by Geoffrey Young <ge...@modperlcookbook.org>.
> so yeah, it sucks, continues to suck, and I'm sorry.

ok, I went through and changed all of the ones I saw that needed changing.
all tests are fine for me except the ones for modules I don't have installed
(namely ssl and php).  sorry if I broke any of those...

--Geoff

Re: cvs commit: httpd-test/perl-framework/t/protocol nntp-like.t

Posted by Geoffrey Young <ge...@modperlcookbook.org>.

Justin Erenkrantz wrote:
> --On Wednesday, September 29, 2004 10:26 AM +0100 Joe Orton
> <jo...@redhat.com> wrote:
> 
>> Yup, the t_cmp arguments were flipped a while back.
> 
> 
> FWIW, I think whomever flipped the t_cmp arguments but didn't flip the
> included test cases at the same time needs a stern talking to.  I spent
> over an hour and a half figuring out why the heck httpd was returning a
> 200 in that case where a 413 was clearly (or at least more) correct:
> only to find out that the debug output was swapped.  Incredibly,
> incredibly lame.

yeah, well, that was me.  it's difficult to find the time to do everything
that needs doing.  in this case, the order was swapped to be consistent with
 other (more popular) Perl testing libraries, but there just weren't enough
tuits lying around to make all the changes throughout the perl-framework.
the argument at the time was that this was OK(tm) because the only thing
affected was the debugging output, not the actual comparison.  I'll take the
blame for that brain fart too, but again a severe lack of free time got in
the way of doing things a bit better.

however, those of us that are reasonably active here were aware of this, uh,
issue and were changing test files as we touched them for other reasons.

so yeah, it sucks, continues to suck, and I'm sorry.  I'll buy you a beer or
two at apachecon to make up for it :)

--Geoff

Re: cvs commit: httpd-test/perl-framework/t/protocol nntp-like.t

Posted by Justin Erenkrantz <ju...@erenkrantz.com>.
--On Wednesday, September 29, 2004 10:26 AM +0100 Joe Orton 
<jo...@redhat.com> wrote:

> Yup, the t_cmp arguments were flipped a while back.

FWIW, I think whomever flipped the t_cmp arguments but didn't flip the 
included test cases at the same time needs a stern talking to.  I spent 
over an hour and a half figuring out why the heck httpd was returning a 200 
in that case where a 413 was clearly (or at least more) correct: only to 
find out that the debug output was swapped.  Incredibly, incredibly lame.

All I wanted to do last night was add some caching tests: instead I had to 
fix our tests to pass at all.  *sigh*  -- justin