1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55
|
#!/usr/bin/perl
$| = 1;
## ----------------------------------------------------------------------------
## 12imptdata.t
## By Jeffrey Klein,
## ----------------------------------------------------------------------------
use strict;
use DBI;
use Config qw(%Config);
# must be done before Test::More - see Threads in Test::More pod
BEGIN { eval "use threads; use threads::shared;" }
my $use_threads_err = $@;
use Test::More;
BEGIN {
if ($DBI::VERSION <= 1.601){
plan skip_all => "DBI version ".$DBI::VERSION." does not support iThreads. Use version 1.602 or later.";
}
die $use_threads_err if $use_threads_err; # need threads
}
unshift @INC, 't';
require 'nchar_test_lib.pl';
my $dsn = oracle_test_dsn();
my $dbuser = $ENV{ORACLE_USERID} || 'scott/tiger';
my $dbh = DBI->connect( $dsn, $dbuser, '', {
PrintError => 0,
});
if ($dbh) {
plan tests => 7;
} else {
plan skip_all => "Unable to connect to Oracle";
}
my $drh = $dbh->{Driver};
my ($sess_1) = $dbh->selectrow_array("select userenv('sessionid') from dual");
is $drh->{Kids}, 1, "1 kid";
is $drh->{ActiveKids}, 1, "1 active kid";
my $imp_data = $dbh->take_imp_data;
is $drh->{Kids}, 0, "no kids";
is $drh->{ActiveKids}, 0, "no active kids";
$dbh = DBI->connect( $dsn, $dbuser, '', { dbi_imp_data => $imp_data } );
my ($sess_2) = $dbh->selectrow_array("select userenv('sessionid') from dual");
is $sess_1, $sess_2, "got same session";
is $drh->{Kids}, 1, "1 kid";
is $drh->{ActiveKids}, 1, "1 active kid";
__END__
|