#!/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 } use Test::More tests => 7; 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, '', ); 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__