[svn:dbd-oracle] r14877 - dbd-oracle/branches/FAN/t
[email protected] Fri, 27 May 2011 05:06:51 -0700 (PDT)
| Newsgroups | perl.dbd.oracle.changes |
|---|---|
| Message-ID | <[email protected]> |
Author: byterock
Date: Fri May 27 05:06:51 2011
New Revision: 14877
Added:
dbd-oracle/branches/FAN/t/17taf.t
Log:
Second checkin
Added: dbd-oracle/branches/FAN/t/17taf.t
==============================================================================
--- (empty file)
+++ dbd-oracle/branches/FAN/t/17taf.t Fri May 27 05:06:51 2011
@@ -0,0 +1,104 @@
+#!perl -w
+use Test::More;
+use DBI;
+use DBD::Oracle qw(:ora_types ORA_OCI);
+use Data::Dumper;
+use Math::BigInt;
+use strict;
+
+unshift @INC ,'t';
+require 'nchar_test_lib.pl';
+
+$| = 1;
+
+my @test_sets = (
+ [ "CHAR(10)", 10 ],
+ [ "VARCHAR(10)", 10 ],
+ [ "VARCHAR2(10)", 10 ],
+);
+
+# Set size of test data (in 10KB units)
+# Minimum value 3 (else tests fail because of assumptions)
+# Normal value 8 (to test 64KB threshold well)
+my $sz = 8;
+
+my $tests = 3;
+my $tests_per_set = 11;
+$tests += @test_sets * $tests_per_set;
+
+my $t = 0;
+my $failed = 0;
+my %ocibug;
+my $table = "dbd_ora__drop_me" . ($ENV{DBD_ORACLE_SEQ}||'');
+
+
+my $dsn = oracle_test_dsn();
+
+my $sys_dbuser = $ENV{ORACLE_SYS_USERID} || '';
+
+my @sys = split(/,/,$sys_dbuser);
+
+#if ($sys_dbuser eq '') {
+# plan skip_all => "ORACLE_SYS_USERID not defined.\n";
+#}
+use Data::Dumper;
+
+warn Dumper \@sys;
+my $att = { RaiseError => 1, TraceLevel => 1 };
+
+#sys/design1
+my @con = ('dbi:Oracle:ORCLTDB','sys','design1', $att );
+
+ $att->{ora_session_mode} = DBD::Oracle::ORA_SYSDBA;
+my $dbh = DBI->connect( @con );
+#my $dbh = DBI->connect('dbi:Oracle:',$sys[0], $sys[1], {
+# RaiseError => 1,
+# ora_session_mode=>DBD::Oracle::ORA_SYSDBA
+# });
+
+if ($dbh) {
+ plan tests=>$tests;
+} else {
+ plan skip_all => "Unable to connect to oracle\n";
+}
+
+
+my $ary = $dbh->selectall_arrayref('select username, program from v$session where sid <> ( select distinct sid from v$mystat ) and username is not null');
+
+if ( @$ary ) {
+ print "Active session: $_->[0] ($_->[1])\n" for @$ary;
+ $dbh->ora_db_shutdown( { ora_mode => DBD::Oracle::OCI_DBSHUTDOWN_ABORT } );
+}
+else {
+ $dbh->ora_db_shutdown( { } );
+ $dbh->do('ALTER SYSTEM SET job_queue_processes = 0'); # SCOPE=MEMORY
+ $dbh->do('ALTER SYSTEM SET aq_tm_processes = 0'); # SCOPE=MEMORY
+ $dbh->do('ALTER DATABASE CLOSE NORMAL');
+ $dbh->do('ALTER DATABASE DISMOUNT');
+ $dbh->ora_db_shutdown( { ora_mode => DBD::Oracle::OCI_DBSHUTDOWN_FINAL } );
+}
+$dbh->disconnect;
+
+sleep(25);
+
+
+# $att->{ora_session_mode} = DBD::Oracle::ORA_SYSDBA | DBD::Oracle::OCI_PRELIM_AUTH;
+
+ $dbh = DBI->connect('dbi:Oracle:ORCLTDB','sys','design1', $att );
+
+# RaiseError => 1,
+ # ora_session_mode=>DBD::Oracle::ORA_SYSOPER
+ # });
+
+ #$dbh = DBI->connect( @con );
+ $dbh->ora_db_startup( { ora_pfile => $ENV{ORA_PFILE} } );
+ $dbh->disconnect;
+
+ $att->{ora_session_mode} = DBD::Oracle::ORA_SYSDBA;
+ $dbh = DBI->connect($dsn, $sys_dbuser, '', $att);
+
+ $dbh->do('ALTER DATABASE MOUNT');
+ $dbh->do('ALTER DATABASE OPEN');
+ $dbh->disconnect;
+
+__END__