FAQ sync
[p5sagit/p5-mst-13.2.git] / ext / DynaLoader / t / XSLoader.t
index 82dca56..dea14cd 100644 (file)
@@ -10,12 +10,21 @@ BEGIN {
 use strict;
 use Config;
 
+my $db_file;
 BEGIN {
     eval "use Test::More";
     if ($@) {
         print "1..0 # Skip: Test::More not available\n";
         die "Test::More not available\n";
     }
+
+    use Config;
+    foreach (qw/SDBM_File GDBM_File ODBM_File NDBM_File DB_File/) {
+        if ($Config{extensions} =~ /\b$_\b/) {
+            $db_file = $_;
+            last;
+        }
+    }
 }
 
 
@@ -23,7 +32,7 @@ my %modules = (
     # ModuleName  => q|code to check that it was loaded|,
     'Cwd'        => q| ::can_ok( 'Cwd' => 'fastcwd'         ) |,  # 5.7 ?
     'File::Glob' => q| ::can_ok( 'File::Glob' => 'doglob'   ) |,  # 5.6
-    'SDBM_File'  => q| ::can_ok( 'SDBM_File' => 'TIEHASH'   ) |,  # 5.0
+    $db_file     => q| ::can_ok( $db_file => 'TIEHASH'      ) |,  # 5.0
     'Socket'     => q| ::can_ok( 'Socket' => 'inet_aton'    ) |,  # 5.0
     'Time::HiRes'=> q| ::can_ok( 'Time::HiRes' => 'usleep'  ) |,  # 5.7.3
 );
@@ -55,7 +64,7 @@ for my $module (sort keys %modules) {
         skip "$module not available", 3 if $extensions !~ /\b$module\b/;
 
         eval qq{ package $module; XSLoader::load('$module', "qunckkk"); };
-        like( $@, "/^$module object version \\S+ does not match bootstrap parameter (?:qunckkk|0\\.000)/",  
+        like( $@, "/^$module object version \\S+ does not match bootstrap parameter (?:qunckkk|0)/",  
                 "calling XSLoader::load() with a XS module and an incorrect version" );
 
         eval qq{ package $module; XSLoader::load('$module'); };