diff --git a/test/aq7.js b/test/aq7.js index ac7dfe7d..f1ea5c41 100644 --- a/test/aq7.js +++ b/test/aq7.js @@ -147,7 +147,7 @@ describe('283. aq7.js', function() { assert.equal(msgs[2].payload.empId, 103); }); - it('283.3 Map javascript object directly into JSON', async () => { + it('283.3 Map Javascript object directly into JSON', async () => { const queue = await conn.getQueue (objQueueName, { payloadType: oracledb.DB_TYPE_JSON } ); @@ -171,7 +171,7 @@ describe('283. aq7.js', function() { assert.equal (msg.payload.empCity, "City"); }); - it('283.4 Boolean and null value', async function() { + it('283.4 Null and Boolean value in JSON', async function() { const queue = await conn.getQueue (objQueueName, { payloadType: oracledb.DB_TYPE_JSON } ); @@ -195,7 +195,7 @@ describe('283. aq7.js', function() { assert.equal (msg.payload.empCity, true); }); - it('283.5 enqOne and deqOne Json val as array type', async function() { + it('283.5 enqOne and deqOne JSON val as array type', async function() { const queue = await conn.getQueue (objQueueName, { payloadType: oracledb.DB_TYPE_JSON } ); @@ -210,10 +210,10 @@ describe('283. aq7.js', function() { {payloadType: oracledb.DB_TYPE_JSON}); const msg = await queue2.deqOne (); await conn.commit (); - assert.deepEqual (msg.payload.employees, [ "Employee1", "Employee2", "Employee3" ]); + assert.deepStrictEqual (msg.payload.employees, [ "Employee1", "Employee2", "Employee3" ]); }); - it('283.6 enqMany() with Json val as array type', async function() { + it('283.6 enqMany and deqMany with JSON val as array type', async function() { const queue3 = await conn.getQueue (objQueueName, { payloadType: oracledb.DB_TYPE_JSON }); @@ -237,12 +237,12 @@ describe('283. aq7.js', function() { const msgs = await queue4.deqMany(3); // get at most 3 messages - assert.deepEqual(msgs[0].payload.empName1, ["Employee #1", 101]); - assert.deepEqual(msgs[1].payload.empName2, ["Employee #2", 102]); - assert.deepEqual(msgs[2].payload.empName3, ["Employee #3", 103]); + assert.deepStrictEqual(msgs[0].payload.empName1, ["Employee #1", 101]); + assert.deepStrictEqual(msgs[1].payload.empName2, ["Employee #2", 102]); + assert.deepStrictEqual(msgs[2].payload.empName3, ["Employee #3", 103]); }); - it('283.7 enqOne and deqOne Json val as object type', async function() { + it('283.7 enqOne and deqOne JSON val as object type', async function() { const queue = await conn.getQueue (objQueueName, { payloadType: oracledb.DB_TYPE_JSON } ); @@ -257,10 +257,10 @@ describe('283. aq7.js', function() { {payloadType: oracledb.DB_TYPE_JSON}); const msg = await queue2.deqOne (); await conn.commit (); - assert.deepEqual (msg.payload.employee, { "name":"Employee1", "age":30, "city":"New City" }); + assert.deepStrictEqual (msg.payload.employee, { "name":"Employee1", "age":30, "city":"New City" }); }); - it('283.8 enqMany() with Json val as object type', async function() { + it('283.8 enqMany and deqMany with JSON val as object type', async function() { const queue3 = await conn.getQueue (objQueueName, {payloadType: oracledb.DB_TYPE_JSON}); @@ -284,9 +284,9 @@ describe('283. aq7.js', function() { const msgs = await queue4.deqMany(3); // get at most 3 messages - assert.deepEqual(msgs[0].payload.empDetails1, { "name":"Employee1", "age":24, "city":"New City" }); - assert.deepEqual(msgs[1].payload.empDetails2, { "name":"Employee2", "age":30, "city":"New York" }); - assert.deepEqual(msgs[2].payload.empDetails3, { "name":"Employee3", "age":28, "city":"New Land" }); + assert.deepStrictEqual(msgs[0].payload.empDetails1, { "name":"Employee1", "age":24, "city":"New City" }); + assert.deepStrictEqual(msgs[1].payload.empDetails2, { "name":"Employee2", "age":30, "city":"New York" }); + assert.deepStrictEqual(msgs[2].payload.empDetails3, { "name":"Employee3", "age":28, "city":"New Land" }); }); it('283.9 enqOne and deqOne CLOB value into a JSON key ', async function() { @@ -311,6 +311,6 @@ describe('283. aq7.js', function() { const msg = await queue2.deqOne (); await conn.commit (); - assert.deepEqual (msg.payload, jsonDoc); + assert.deepStrictEqual (msg.payload, jsonDoc); }); }); diff --git a/test/dbObject20.js b/test/dbObject20.js index 96c16274..38bd9ecf 100644 --- a/test/dbObject20.js +++ b/test/dbObject20.js @@ -23,7 +23,7 @@ * limitations under the License. * * NAME - * 281. dbObject20.js + * 290. dbObject20.js * * DESCRIPTION * Test the Oracle data type Object on NCHAR, NVARCHAR and RAW. @@ -37,7 +37,7 @@ const dbConfig = require('./dbconfig.js'); const testsUtil = require('./testsUtil.js'); const assist = require('./dataTypeAssist.js'); -describe('281. dbObject20.js', () => { +describe('290. dbObject20.js', () => { let conn; const TABLE = 'NODB_TAB_OBJ'; @@ -71,7 +71,7 @@ describe('281. dbObject20.js', () => { nodb_getDataCursor2(p_cur2); end;`; - describe('281.1 db Object tests with NCHAR datatype', () => { + describe('290.1 db Object tests with NCHAR datatype', () => { const TYPE = 'NODB_TYP_OBJ_1'; before(async () => { conn = await oracledb.getConnection(dbConfig); @@ -106,7 +106,7 @@ describe('281. dbObject20.js', () => { await conn.close(); }); // after() - it('281.1.1 insert an object with numeric/string values in NCHAR datatype', async () => { + it('290.1.1 insert an object with numeric/string values in NCHAR datatype', async () => { let sql = `INSERT INTO ${TABLE} VALUES (:1, :2)`; const objData = { ID: 201, @@ -126,9 +126,9 @@ describe('281. dbObject20.js', () => { assert.strictEqual(result.rows[0][0], seq); assert.strictEqual(result.rows[0][1]['ID'], objData.ID); assert.strictEqual(result.rows[0][1]['NAME'].trim(), objData.NAME); - }); // 281.1.1 + }); // 290.1.1 - it('281.1.2 insert an object with null string values', async () => { + it('290.1.2 insert an object with null string values', async () => { let sql = `INSERT INTO ${TABLE} VALUES (:1, :2)`; const objData = { ID: 203, @@ -148,9 +148,9 @@ describe('281. dbObject20.js', () => { assert.strictEqual(result.rows[0][0], seq); assert.strictEqual(result.rows[0][1]['ID'], objData.ID); assert.strictEqual(result.rows[0][1]['NAME'], null); - }); // 281.1.2 + }); // 290.1.2 - it('281.1.3 insert an object with undefined string values', async () => { + it('290.1.3 insert an object with undefined string values', async () => { let sql = `INSERT INTO ${TABLE} VALUES (:1, :2)`; const objData = { ID: 205, @@ -170,9 +170,9 @@ describe('281. dbObject20.js', () => { assert.strictEqual(result.rows[0][0], seq); assert.strictEqual(result.rows[0][1]['ID'], objData.ID); assert.strictEqual(result.rows[0][1]['NAME'], null); - }); // 281.1.3 + }); // 290.1.3 - it('281.1.4 insert an empty object - no attributes', async () => { + it('290.1.4 insert an empty object - no attributes', async () => { let sql = `INSERT INTO ${TABLE} VALUES (:1, :2)`; const objData = { }; const objClass = await conn.getDbObjectClass(TYPE); @@ -189,9 +189,9 @@ describe('281. dbObject20.js', () => { assert.strictEqual(result.rows[0][0], seq); assert.ifError(result.rows[0][1]['ID']); assert.ifError(result.rows[0][1]['NAME']); - }); // 281.1.4 + }); // 290.1.4 - it('281.1.5 insert data via binding by object', async () => { + it('290.1.5 insert data via binding by object', async () => { let sql = `INSERT INTO ${TABLE} VALUES (:a, :b)`; const objData = { ID: 207, @@ -211,9 +211,9 @@ describe('281. dbObject20.js', () => { assert.strictEqual(result.rows[0].NUM, seq); assert.strictEqual(result.rows[0].PERSON['ID'], objData.ID); assert.strictEqual(result.rows[0].PERSON.NAME.trim(), objData.NAME); - }); // 281.1.5 + }); // 290.1.5 - it('281.1.6 insert multiple rows using executeMany() with inferred data type', async () => { + it('290.1.6 insert multiple rows using executeMany() with inferred data type', async () => { const objClass = await conn.getDbObjectClass(TYPE); let initialID = 208; const initialSeq = 108; @@ -254,9 +254,9 @@ describe('281. dbObject20.js', () => { assert.strictEqual(result.rows[j][1]['ID'], objDataArray[j].ID); assert.strictEqual(result.rows[j][1].NAME.trim(), objDataArray[j].NAME); } - }); // 281.1.6 + }); // 290.1.6 - it('281.1.7 insert multiple rows using executeMany() with explicit data type', async () => { + it('290.1.7 insert multiple rows using executeMany() with explicit data type', async () => { const objClass = await conn.getDbObjectClass(TYPE); let initialID = 3000; const initialSeq = 300; @@ -300,9 +300,9 @@ describe('281. dbObject20.js', () => { assert.strictEqual(result.rows[j][1]['ID'], objDataArray[j].ID); assert.strictEqual(result.rows[j][1].NAME.trim(), objDataArray[j].NAME); } - }); // 281.1.7 + }); // 290.1.7 - it('281.1.8 call procedure with 2 OUT binds of DbObject', async function() { + it('290.1.8 call procedure with 2 OUT binds of DbObject', async function() { const result = await conn.execute( `BEGIN nodb_getDataCursor3(p_cur1 => :p_cur1, @@ -320,10 +320,10 @@ describe('281. dbObject20.js', () => { resultSet = await result.outBinds.p_cur2.getRows(); assert.equal(resultSet.length, 3); result.outBinds.p_cur2.close(); - }); // 281.1.8 + }); // 290.1.8 }); - describe('281.2 db Object tests with NVARCHAR2 datatype', () => { + describe('290.2 db Object tests with NVARCHAR2 datatype', () => { const TYPE = 'NODB_TYP_OBJ_2'; before(async () => { @@ -358,7 +358,7 @@ describe('281. dbObject20.js', () => { await conn.close(); }); // after() - it('281.2.1 insert an object with numeric/string values in NVARCHAR2 datatype', async () => { + it('290.2.1 insert an object with numeric/string values in NVARCHAR2 datatype', async () => { let sql = `INSERT INTO ${TABLE} VALUES (:1, :2)`; const objData = { ID: 201, @@ -378,9 +378,9 @@ describe('281. dbObject20.js', () => { assert.strictEqual(result.rows[0][0], seq); assert.strictEqual(result.rows[0][1]['ID'], objData.ID); assert.strictEqual(result.rows[0][1]['NAME'], objData.NAME); - }); // 281.2.1 + }); // 290.2.1 - it('281.2.2 insert an object with null string values', async () => { + it('290.2.2 insert an object with null string values', async () => { let sql = `INSERT INTO ${TABLE} VALUES (:1, :2)`; const objData = { ID: 203, @@ -400,9 +400,9 @@ describe('281. dbObject20.js', () => { assert.strictEqual(result.rows[0][0], seq); assert.strictEqual(result.rows[0][1]['ID'], objData.ID); assert.strictEqual(result.rows[0][1]['NAME'], null); - }); // 281.2.2 + }); // 290.2.2 - it('281.2.3 insert an object with undefined string values', async () => { + it('290.2.3 insert an object with undefined string values', async () => { let sql = `INSERT INTO ${TABLE} VALUES (:1, :2)`; const objData = { ID: 205, @@ -422,9 +422,9 @@ describe('281. dbObject20.js', () => { assert.strictEqual(result.rows[0][0], seq); assert.strictEqual(result.rows[0][1]['ID'], objData.ID); assert.strictEqual(result.rows[0][1]['NAME'], null); - }); // 281.2.3 + }); // 290.2.3 - it('281.2.4 insert an empty object - no attributes', async () => { + it('290.2.4 insert an empty object - no attributes', async () => { let sql = `INSERT INTO ${TABLE} VALUES (:1, :2)`; const objData = { }; const objClass = await conn.getDbObjectClass(TYPE); @@ -441,9 +441,9 @@ describe('281. dbObject20.js', () => { assert.strictEqual(result.rows[0][0], seq); assert.ifError(result.rows[0][1]['ID']); assert.ifError(result.rows[0][1]['NAME']); - }); // 281.2.4 + }); // 290.2.4 - it('281.2.5 insert data via binding by object', async () => { + it('290.2.5 insert data via binding by object', async () => { let sql = `INSERT INTO ${TABLE} VALUES (:a, :b)`; const objData = { ID: 207, @@ -463,9 +463,9 @@ describe('281. dbObject20.js', () => { assert.strictEqual(result.rows[0].NUM, seq); assert.strictEqual(result.rows[0].PERSON['ID'], objData.ID); assert.strictEqual(result.rows[0].PERSON.NAME, objData.NAME); - }); // 281.2.5 + }); // 290.2.5 - it('281.2.6 insert multiple rows using executeMany() with inferred data type', async () => { + it('290.2.6 insert multiple rows using executeMany() with inferred data type', async () => { const objClass = await conn.getDbObjectClass(TYPE); let initialID = 208; const initialSeq = 108; @@ -506,9 +506,9 @@ describe('281. dbObject20.js', () => { assert.strictEqual(result.rows[j][1]['ID'], objDataArray[j].ID); assert.strictEqual(result.rows[j][1].NAME, objDataArray[j].NAME); } - }); // 281.2.6 + }); // 290.2.6 - it('281.2.7 insert multiple rows using executeMany() with explicit data type', async () => { + it('290.2.7 insert multiple rows using executeMany() with explicit data type', async () => { const objClass = await conn.getDbObjectClass(TYPE); let initialID = 3000; const initialSeq = 300; @@ -552,9 +552,9 @@ describe('281. dbObject20.js', () => { assert.strictEqual(result.rows[j][1]['ID'], objDataArray[j].ID); assert.strictEqual(result.rows[j][1].NAME, objDataArray[j].NAME); } - }); // 281.2.7 + }); // 290.2.7 - it('281.2.8 call procedure with 2 OUT binds of DbObject', async function() { + it('290.2.8 call procedure with 2 OUT binds of DbObject', async function() { const result = await conn.execute( `BEGIN nodb_getDataCursor3(p_cur1 => :p_cur1, @@ -572,10 +572,10 @@ describe('281. dbObject20.js', () => { resultSet = await result.outBinds.p_cur2.getRows(); assert.equal(resultSet.length, 3); result.outBinds.p_cur2.close(); - }); // 281.2.8 + }); // 290.2.8 }); - describe('281.3 db Object tests with RAW datatype', () => { + describe('290.3 db Object tests with RAW datatype', () => { const TYPE = 'NODB_TYP_OBJ_3'; before(async () => { @@ -611,7 +611,7 @@ describe('281. dbObject20.js', () => { await conn.close(); }); // after() - it('281.3.1 insert an object with numeric/string values in RAW datatype', async () => { + it('290.3.1 insert an object with numeric/string values in RAW datatype', async () => { let sql = `INSERT INTO ${TABLE} VALUES (:1, :2)`; const objData = { ID: 201, @@ -631,9 +631,9 @@ describe('281. dbObject20.js', () => { assert.strictEqual(result.rows[0][0], seq); assert.strictEqual(result.rows[0][1]['ID'], objData.ID); assert.deepEqual(result.rows[0][1]['NAME'], objData.NAME); - }); // 281.3.1 + }); // 290.3.1 - it('281.3.2 insert an object with null string values', async () => { + it('290.3.2 insert an object with null string values', async () => { let sql = `INSERT INTO ${TABLE} VALUES (:1, :2)`; const objData = { ID: 203, @@ -653,9 +653,9 @@ describe('281. dbObject20.js', () => { assert.strictEqual(result.rows[0][0], seq); assert.strictEqual(result.rows[0][1]['ID'], objData.ID); assert.strictEqual(result.rows[0][1]['NAME'], null); - }); // 281.3.2 + }); // 290.3.2 - it('281.3.3 insert an object with undefined string values', async () => { + it('290.3.3 insert an object with undefined string values', async () => { let sql = `INSERT INTO ${TABLE} VALUES (:1, :2)`; const objData = { ID: 205, @@ -675,9 +675,9 @@ describe('281. dbObject20.js', () => { assert.strictEqual(result.rows[0][0], seq); assert.strictEqual(result.rows[0][1]['ID'], objData.ID); assert.strictEqual(result.rows[0][1]['NAME'], null); - }); // 281.3.3 + }); // 290.3.3 - it('281.3.4 insert an empty object - no attributes', async () => { + it('290.3.4 insert an empty object - no attributes', async () => { let sql = `INSERT INTO ${TABLE} VALUES (:1, :2)`; const objData = { }; const objClass = await conn.getDbObjectClass(TYPE); @@ -694,9 +694,9 @@ describe('281. dbObject20.js', () => { assert.strictEqual(result.rows[0][0], seq); assert.ifError(result.rows[0][1]['ID']); assert.ifError(result.rows[0][1]['NAME']); - }); // 281.3.4 + }); // 290.3.4 - it('281.3.5 insert data via binding by object', async () => { + it('290.3.5 insert data via binding by object', async () => { let sql = `INSERT INTO ${TABLE} VALUES (:a, :b)`; const objData = { ID: 207, @@ -716,9 +716,9 @@ describe('281. dbObject20.js', () => { assert.strictEqual(result.rows[0].NUM, seq); assert.strictEqual(result.rows[0].PERSON['ID'], objData.ID); assert.deepEqual(result.rows[0].PERSON.NAME, objData.NAME); - }); // 281.3.5 + }); // 290.3.5 - it('281.3.6 insert multiple rows using executeMany() with inferred data type', async () => { + it('290.3.6 insert multiple rows using executeMany() with inferred data type', async () => { const objClass = await conn.getDbObjectClass(TYPE); let initialID = 208; const initialSeq = 108; @@ -759,9 +759,9 @@ describe('281. dbObject20.js', () => { assert.strictEqual(result.rows[j][1]['ID'], objDataArray[j].ID); assert.deepEqual(result.rows[j][1].NAME, objDataArray[j].NAME); } - }); // 281.3.6 + }); // 290.3.6 - it('281.3.7 insert multiple rows using executeMany() with explicit data type', async () => { + it('290.3.7 insert multiple rows using executeMany() with explicit data type', async () => { const objClass = await conn.getDbObjectClass(TYPE); let initialID = 3000; const initialSeq = 300; @@ -805,9 +805,9 @@ describe('281. dbObject20.js', () => { assert.strictEqual(result.rows[j][1]['ID'], objDataArray[j].ID); assert.deepEqual(result.rows[j][1].NAME, objDataArray[j].NAME); } - }); // 281.3.7 + }); // 290.3.7 - it('281.3.8 call procedure with 2 OUT binds of DbObject', async function() { + it('290.3.8 call procedure with 2 OUT binds of DbObject', async function() { const result = await conn.execute( `BEGIN nodb_getDataCursor3(p_cur1 => :p_cur1, @@ -825,9 +825,9 @@ describe('281. dbObject20.js', () => { resultSet = await result.outBinds.p_cur2.getRows(); assert.equal(resultSet.length, 3); result.outBinds.p_cur2.close(); - }); // 281.3.8 + }); // 290.3.8 - it('281.3.9 insert an object with buffer value with size 10', async () => { + it('290.3.9 insert an object with buffer value with size 10', async () => { let sql = `INSERT INTO ${TABLE} VALUES (:1, :2)`; const objData = { ID: 210, @@ -847,9 +847,9 @@ describe('281. dbObject20.js', () => { assert.strictEqual(result.rows[0][0], seq); assert.strictEqual(result.rows[0][1]['ID'], objData.ID); assert.deepEqual(result.rows[0][1]['NAME'], objData.NAME); - }); // 281.3.9 + }); // 290.3.9 - it('281.3.10 insert an object with buffer value with size 100', async () => { + it('290.3.10 insert an object with buffer value with size 100', async () => { const sql = `INSERT INTO ${TABLE} VALUES (:1, :2)`; const objData = { ID: 211, @@ -863,6 +863,6 @@ describe('281. dbObject20.js', () => { async () => await conn.execute(sql, [seq, testObj]), /ORA-21525:|ORA-00910:/ //ORA-21525: attribute number or (collection element at index) %s violated its constraints ); - }); // 281.3.10 + }); // 290.3.10 }); }); diff --git a/test/list.txt b/test/list.txt index 39b97b84..d1a0ec05 100755 --- a/test/list.txt +++ b/test/list.txt @@ -5473,12 +5473,12 @@ oracledb.OUT_FORMAT_OBJECT and resultSet = true 283. aq7.js 283.1 JSON type in enqOne/deqOne 283.2 JSON type in enqMany/deqMany - 283.3 Map javascript object directly into JSON - 283.4 Boolean and null value - 283.5 enqOne and deqOne Json val as array type - 283.6 enqMany() with Json val as array type - 283.7 enqOne and deqOne Json val as object type - 283.8 enqMany() with Json val as object type + 283.3 Map Javascript object directly into JSON + 283.4 Null and Boolean value in JSON + 283.5 enqOne and deqOne JSON val as array type + 283.6 enqMany and deqMany with JSON val as array type + 283.7 enqOne and deqOne JSON val as object type + 283.8 enqMany and deqMany with JSON val as object type 283.9 enqOne and deqOne CLOB value into a JSON key 284. errorUrl.js