Thread: New unified regression test driver

New unified regression test driver

From
Peter Eisentraut
Date:
I've committed the announced unified regression test driver.  (See Sep.20
message for list of features.)  You can invoke it via `make check', either
in the top level directory, or directly in src/test/regress.  To test
against a running installation, use `make installcheck'.

The existing drivers still work unchanged, but should probably be
superceded by this eventually.


-- 
Peter Eisentraut      peter_e@gmx.net       http://yi.org/peter-e/



Re: New unified regression test driver

From
Lamar Owen
Date:
Peter Eisentraut wrote:
> I've committed the announced unified regression test driver.  (See Sep.20
> message for list of features.)  You can invoke it via `make check', either
> in the top level directory, or directly in src/test/regress.  To test
> against a running installation, use `make installcheck'.

First, Peter, thanks a million for all the work you've done on
PostgreSQL.

That said, I have a request -- since the binary distributions might
possibly be installed on machines with no make and no compiler, I would
like to see the regression tests be reduced to a simple script and
driver that could be simply invoked with no need for make.  Binary-only
users might want to regress a little, too.

Up until RH7, the postgresql-test RPM as shipped had a halfway built
regression test suite, and the finishing touch was supplied by the user
at run time who invoked regress.sh directly with the appropriate
arguments.  However, this didn't allow the user to run the parallel
regression suite.

People are running PostgreSQL every day on machines with no compiler and
no source code -- they need a regression suite, too.

Of course, I can always work around the issue, as I have in the past....
--
Lamar Owen
WGCR Internet Radio
1 Peter 4:11


Re: New unified regression test driver

From
Peter Eisentraut
Date:
Lamar Owen writes:

> That said, I have a request -- since the binary distributions might
> possibly be installed on machines with no make and no compiler, I would
> like to see the regression tests be reduced to a simple script and
> driver that could be simply invoked with no need for make.  Binary-only
> users might want to regress a little, too.

This was originally one of my implementation goals, but it's a bit tricky.  
Some of the SQL input files contains absolute paths as part of CREATE
FUNCTION or COPY commands.  We'd have to patch up these paths as part of
the installation run.  That's terribly inelegant and it would probably
break something else I'm thinking about.  (Automatically generating
install manifests by substituting something clever for the $(INSTALL) make
variable.  You might be interested in this too.  Stay tuned.)

That said, the new script should make things a bit easier for you because
it is reasonably standalone, allows parallel and serial regression tests,
and has command line options to find the input and output files.  The ugly
details about how to install the right files I would like to leave up to
the packager right now.

One thing I thought of was that perhaps the regression test driver could
substitute the correct paths at run time rather than at build time.  But
that would break backward compatibility with the old drivers, and as we
haven't even settled on the new one yet, it's probably an inopportune time
to try it now.

-- 
Peter Eisentraut      peter_e@gmx.net       http://yi.org/peter-e/



RE: New unified regression test driver

From
"Frederick W. Reimer"
Date:
This may sound stupid, but what's wrong with including a binary make
executable in a binary PostgreSQL package?  It could be stored in the
regression test directory and then you could write a "standard" regression
test makefile instead of a different "script" for each platform.  A compiler
would be out of the question due to its size, but a binary make shouldn't be
too large.

Fred Reimer
Eclipsys Corporation

> -----Original Message-----
> From: pgsql-hackers-owner@hub.org
> [mailto:pgsql-hackers-owner@hub.org]On
> Behalf Of Peter Eisentraut
> Sent: Thursday, October 05, 2000 1:43 PM
> To: Lamar Owen
> Cc: PostgreSQL Development
> Subject: Re: [HACKERS] New unified regression test driver
>
>
> Lamar Owen writes:
>
> > That said, I have a request -- since the binary distributions might
> > possibly be installed on machines with no make and no
> compiler, I would
> > like to see the regression tests be reduced to a simple script and
> > driver that could be simply invoked with no need for make.
> Binary-only
> > users might want to regress a little, too.
>
> This was originally one of my implementation goals, but it's
> a bit tricky.
> Some of the SQL input files contains absolute paths as part of CREATE
> FUNCTION or COPY commands.  We'd have to patch up these paths
> as part of
> the installation run.  That's terribly inelegant and it would probably
> break something else I'm thinking about.  (Automatically generating
> install manifests by substituting something clever for the
> $(INSTALL) make
> variable.  You might be interested in this too.  Stay tuned.)
>
> That said, the new script should make things a bit easier for
> you because
> it is reasonably standalone, allows parallel and serial
> regression tests,
> and has command line options to find the input and output
> files.  The ugly
> details about how to install the right files I would like to
> leave up to
> the packager right now.
>
> One thing I thought of was that perhaps the regression test
> driver could
> substitute the correct paths at run time rather than at build
> time.  But
> that would break backward compatibility with the old drivers,
> and as we
> haven't even settled on the new one yet, it's probably an
> inopportune time
> to try it now.
>
> --
> Peter Eisentraut      peter_e@gmx.net       http://yi.org/peter-e/
>
>



RE: New unified regression test driver

From
Peter Eisentraut
Date:
Frederick W. Reimer writes:

> This may sound stupid, but what's wrong with including a binary make
> executable in a binary PostgreSQL package?

We don't need "make" for the regression test.

-- 
Peter Eisentraut      peter_e@gmx.net       http://yi.org/peter-e/