On Mon, 09 Aug 2010, David E. Wheeler wrote:
> On Aug 9, 2010, at 4:21 PM, Jan Dubois wrote:
> 
> > On Mon, 09 Aug 2010, David E. Wheeler wrote:
> >> Tim, I think we're ready for another dev release, especially since I added 
> >> this test to the MANIFEST.
> >
> > Running tests on the latest ActivePerl shows 2 issues:
> >
> > 1) t/01basics.t fails to load DBD::Oracle (because I don't have the Oracle 
> > client
> >   libraries installed on the test machine).  This produces a popup that the 
> > user
> >   has to explicitly dismiss.  The test then passes without errors.
> 
> Why does it try to load DBD::Oracle? The DBI has no dependency on any DBDs 
> other than those it ships with.

DBI->installed_versions will attempt to load *all* installed drivers.

But I see now that that test is only executed if you are running from a GIT
or SVN checkout, so maybe it doesn't really matter.  If you want to add
the safeguard for it, here is a tested patch (the untested version was missing
one pair of parens):

Index: t/01basics.t
===================================================================
--- t/01basics.t        (revision 14317)
+++ t/01basics.t        (working copy)
@@ -290,6 +290,10 @@
 SKIP: {
        skip 'developer tests', 4 unless -d ".svn" || -d ".git";

+       if ($^O eq "MSWin32" && eval { require Win32API::File }) {
+           
Win32API::File::SetErrorMode(Win32API::File::SEM_FAILCRITICALERRORS());
+       }
+
        print "Test DBI->installed_versions (for @drivers)\n";
        print "(If one of those drivers, or the configuration for it, is bad\n";

        print "then these tests can kill or freeze the process here. That's not 
the DBI's fault.)\n";

Cheers,
-Jan

Reply via email to