@@ -1051,7 +1051,7 @@ describe('17. extendedMetaData.js', function() {
10511051
10521052 } ) ;
10531053
1054- it ( '17.3.27 TIMESTAMP (9 ) WITH TIME ZONE' , function ( done ) {
1054+ it ( '17.3.27 TIMESTAMP (2 ) WITH TIME ZONE' , function ( done ) {
10551055
10561056 connection . execute (
10571057 "SELECT ts4 FROM nodb_metadata" ,
@@ -1156,7 +1156,7 @@ describe('17. extendedMetaData.js', function() {
11561156 it ( '17.3.33 UROWID' , function ( done ) {
11571157
11581158 connection . execute (
1159- "SELECT rid FROM nodb_metadata" ,
1159+ "SELECT urid FROM nodb_metadata" ,
11601160 [ ] ,
11611161 { extendedMetaData : true } ,
11621162 function ( err , result ) {
@@ -1246,12 +1246,18 @@ describe('17. extendedMetaData.js', function() {
12461246 it ( '17.3.38 RAW(2000)' , function ( done ) {
12471247
12481248 connection . execute (
1249- "SELECT mybfile FROM nodb_metadata" ,
1249+ "SELECT myraw FROM nodb_metadata" ,
12501250 [ ] ,
12511251 { extendedMetaData : true } ,
12521252 function ( err , result ) {
1253- ( err . message ) . should . startWith ( 'NJS-010:' ) ;
1254- // NJS-010: unsupported data type in select list
1253+ should . not . exist ( err ) ;
1254+ ( result . metaData ) . should . deepEqual (
1255+ [ { name : 'MYRAW' ,
1256+ fetchType : oracledb . BUFFER ,
1257+ dbType : oracledb . DB_TYPE_RAW ,
1258+ byteSize : 2000 ,
1259+ nullable : true } ]
1260+ ) ;
12551261 done ( ) ;
12561262 }
12571263 ) ;
@@ -1325,7 +1331,7 @@ describe('17. extendedMetaData.js', function() {
13251331
13261332 async . series ( [
13271333 function ( cb ) {
1328- var proc = "CREATE OR REPLACE PROCEDURE get_rc (p_out OUT SYS_REFCURSOR) \n" +
1334+ var proc = "CREATE OR REPLACE PROCEDURE get_emd_rc (p_out OUT SYS_REFCURSOR) \n" +
13291335 "AS \n" +
13301336 "BEGIN \n" +
13311337 " OPEN p_out FOR \n" +
@@ -1342,7 +1348,7 @@ describe('17. extendedMetaData.js', function() {
13421348 } ,
13431349 function ( cb ) {
13441350 connection . execute (
1345- "BEGIN get_rc (:out); END;" ,
1351+ "BEGIN get_emd_rc (:out); END;" ,
13461352 {
13471353 out : { type : oracledb . CURSOR , dir : oracledb . BIND_OUT }
13481354 } ,
@@ -1356,7 +1362,7 @@ describe('17. extendedMetaData.js', function() {
13561362 } ,
13571363 function ( cb ) {
13581364 connection . execute (
1359- "DROP PROCEDURE get_rc " ,
1365+ "DROP PROCEDURE get_emd_rc " ,
13601366 function ( err ) {
13611367 should . not . exist ( err ) ;
13621368 cb ( ) ;
@@ -1438,13 +1444,12 @@ describe('17. extendedMetaData.js', function() {
14381444
14391445 it ( "17.6.2 oracledb.fetchAsString" , function ( done ) {
14401446
1441- var defaultValue = oracledb . fetchAsString ;
14421447 async . series ( [
1443- function ( cb ) {
1448+ function change ( cb ) {
14441449 oracledb . fetchAsString = [ oracledb . DATE , oracledb . NUMBER ] ;
14451450 cb ( ) ;
14461451 } ,
1447- function ( cb ) {
1452+ function test ( cb ) {
14481453 connection . execute (
14491454 "SELECT * FROM nodb_md" ,
14501455 [ ] ,
@@ -1470,37 +1475,31 @@ describe('17. extendedMetaData.js', function() {
14701475 cb ( ) ;
14711476 }
14721477 ) ;
1473- } ,
1474- function ( cb ) {
1475- oracledb . fetchAsString = [ ] ;
1476- ( oracledb . fetchAsString ) . should . eql ( defaultValue ) ;
1477- cb ( ) ;
14781478 }
1479- ] , done ) ;
1479+ ] , function ( err ) {
1480+ should . not . exist ( err ) ;
1481+ var defaultValue = [ ] ;
1482+ oracledb . fetchAsString = defaultValue ;
1483+ done ( ) ;
1484+ } ) ;
1485+
14801486 } ) ; // 17.6.2
14811487
14821488 it ( "17.6.3 can override at execution" , function ( done ) {
14831489
1484- var defaultValue = oracledb . fetchAsString ;
14851490 async . series ( [
1486- function ( cb ) {
1491+ function change ( cb ) {
14871492 oracledb . fetchAsString = [ oracledb . DATE , oracledb . NUMBER ] ;
14881493 cb ( ) ;
14891494 } ,
1490- function ( cb ) {
1495+ function test ( cb ) {
14911496 connection . execute (
14921497 "SELECT * FROM nodb_md" ,
14931498 [ ] ,
1494- { outFormat : oracledb . OBJECT ,
1495- extendedMetaData : true ,
1496- fetchInfo :
1497- {
1498- "DT" : { type : oracledb . DEFAULT }
1499- }
1500- } ,
1499+ { outFormat : oracledb . OBJECT , extendedMetaData : true } ,
15011500 function ( err , result ) {
15021501 should . not . exist ( err ) ;
1503- ( result . rows [ 0 ] ) . DT . should . be . a . Date ( ) ;
1502+ ( result . rows [ 0 ] ) . DT . should . be . a . String ( ) ;
15041503 ( result . rows [ 0 ] ) . NUM . should . be . a . String ( ) ;
15051504 ( result . metaData ) . should . deepEqual ( [
15061505 { name : 'NUM' ,
@@ -1514,18 +1513,18 @@ describe('17. extendedMetaData.js', function() {
15141513 dbType : oracledb . DB_TYPE_VARCHAR ,
15151514 byteSize : 1000 ,
15161515 nullable : true } ,
1517- { name : 'DT' , fetchType : oracledb . DATE , dbType : oracledb . DB_TYPE_DATE , nullable : true }
1516+ { name : 'DT' , fetchType : oracledb . STRING , dbType : oracledb . DB_TYPE_DATE , nullable : true }
15181517 ] ) ;
15191518 cb ( ) ;
15201519 }
15211520 ) ;
1522- } ,
1523- function ( cb ) {
1524- oracledb . fetchAsString = [ ] ;
1525- ( oracledb . fetchAsString ) . should . eql ( defaultValue ) ;
1526- cb ( ) ;
15271521 }
1528- ] , done ) ;
1522+ ] , function ( err ) {
1523+ var defaultValue = [ ] ;
1524+ oracledb . fetchAsString = defaultValue ;
1525+ done ( ) ;
1526+ } ) ;
1527+
15291528 } ) ; // 17.6.3
15301529
15311530 } ) ; // 17.6
@@ -1564,13 +1563,13 @@ describe('17. extendedMetaData.js', function() {
15641563 " e_table_missing EXCEPTION; \n" +
15651564 " PRAGMA EXCEPTION_INIT(e_table_missing, -00942);\n " +
15661565 " BEGIN \n" +
1567- " EXECUTE IMMEDIATE ('DROP TABLE nodb_casesensitive '); \n" +
1566+ " EXECUTE IMMEDIATE ('DROP TABLE nodb_md_casesensitive '); \n" +
15681567 " EXCEPTION \n" +
15691568 " WHEN e_table_missing \n" +
15701569 " THEN NULL; \n" +
15711570 " END; \n" +
15721571 " EXECUTE IMMEDIATE (' \n" +
1573- " CREATE TABLE nodb_casesensitive ( \n" +
1572+ " CREATE TABLE nodb_md_casesensitive ( \n" +
15741573 " id NUMBER, \n" +
15751574 ' "nAme" VARCHAR2(20) \n' +
15761575 " ) \n" +
@@ -1587,7 +1586,7 @@ describe('17. extendedMetaData.js', function() {
15871586 } ,
15881587 function ( callback ) {
15891588 connection . execute (
1590- "SELECT * FROM nodb_casesensitive " ,
1589+ "SELECT * FROM nodb_md_casesensitive " ,
15911590 [ ] ,
15921591 { extendedMetaData : true } ,
15931592 function ( err , result ) {
@@ -1613,7 +1612,7 @@ describe('17. extendedMetaData.js', function() {
16131612 } ,
16141613 function ( callback ) {
16151614 connection . execute (
1616- "DROP TABLE nodb_casesensitive " ,
1615+ "DROP TABLE nodb_md_casesensitive " ,
16171616 function ( err ) {
16181617 should . not . exist ( err ) ;
16191618 callback ( ) ;
@@ -1630,7 +1629,7 @@ describe('17. extendedMetaData.js', function() {
16301629
16311630 it ( "17.9.1 works with column names comprised of single character" , function ( done ) {
16321631
1633- var tableName = "nodb_single_char " ;
1632+ var tableName = "nodb_md_singlechar " ;
16341633 var sqlCreate =
16351634 "BEGIN \n" +
16361635 " DECLARE \n" +
@@ -1746,15 +1745,31 @@ describe('17. extendedMetaData.js', function() {
17461745 return buffer . join ( ) ;
17471746 }
17481747
1749- var table_name = "nodb_large_columns" ;
1750- var sqlCreate = "CREATE TABLE " + table_name + " ( " + columns_string + " )" ;
1748+ var table_name = "nodb_md_largecolumns" ;
17511749 var sqlSelect = "SELECT * FROM " + table_name ;
17521750 var sqlDrop = "DROP TABLE " + table_name ;
17531751
1752+ var proc = "BEGIN \n" +
1753+ " DECLARE \n" +
1754+ " e_table_missing EXCEPTION; \n" +
1755+ " PRAGMA EXCEPTION_INIT(e_table_missing, -00942);\n " +
1756+ " BEGIN \n" +
1757+ " EXECUTE IMMEDIATE ('DROP TABLE nodb_md_largecolumns'); \n" +
1758+ " EXCEPTION \n" +
1759+ " WHEN e_table_missing \n" +
1760+ " THEN NULL; \n" +
1761+ " END; \n" +
1762+ " EXECUTE IMMEDIATE (' \n" +
1763+ " CREATE TABLE nodb_md_largecolumns ( \n" +
1764+ columns_string +
1765+ " ) \n" +
1766+ " '); \n" +
1767+ "END; " ;
1768+
17541769 async . series ( [
17551770 function ( callback ) {
17561771 connection . execute (
1757- sqlCreate ,
1772+ proc ,
17581773 function ( err ) {
17591774 should . not . exist ( err ) ;
17601775 callback ( ) ;
0 commit comments