lib/bigint.t See if bigint.pl works
lib/bigrat.pl An arbitrary precision rational arithmetic package
lib/blib.pm For "use blib"
+lib/blib.t blib.pm test
lib/bytes.pm Pragma to enable byte operations
lib/bytes_heavy.pl Support routines for byte pragma
lib/cacheout.pl Manages output filehandles when you need too many
use Cwd;
-use vars qw($VERSION);
+use vars qw($VERSION $Verbose);
$VERSION = '1.00';
+$Verbose = 0;
sub import
{
if (-d $blib && -d "$blib/arch" && -d "$blib/lib")
{
unshift(@INC,"$blib/arch","$blib/lib");
- warn "Using $blib\n";
+ warn "Using $blib\n" if $Verbose;
return;
}
$dir .= "/..";
--- /dev/null
+#!./perl -Tw
+
+BEGIN {
+ chdir 't' if -d 't';
+ @INC = '../lib';
+}
+
+use strict;
+
+sub _cleanup {
+ rmdir foreach reverse qw(blib blib/arch blib/lib);
+ unlink "stderr";
+}
+
+sub _mkdirs {
+ for my $dir (@_) {
+ next if -d $dir;
+ mkdir $dir or die "Can't mkdir $dir: $!" if ! -d $dir;
+ }
+}
+
+
+BEGIN { _cleanup }
+
+use Test::More tests => 7;
+
+eval 'use blib;';
+ok( $@ =~ /Cannot find blib/, 'Fails if blib directory not found' );
+
+_mkdirs(qw(blib blib/arch blib/lib));
+
+{
+ my $warnings;
+ local $SIG{__WARN__} = sub { $warnings = join '', @_ };
+ use_ok('blib');
+ is( $warnings, '', 'use blib is niiiice and quiet' );
+}
+
+is( @INC, 3, '@INC now has 3 elements' );
+is( $INC[2], '../lib', 'blib added to the front of @INC' );
+
+ok( grep(m|blib/lib$|, @INC[0,1]) == 1, ' blib/lib in @INC');
+ok( grep(m|blib/arch$|, @INC[0,1]) == 1, ' blib/arch in @INC');
+
+END { _cleanup(); }