node-oracledb/test
Christopher Jones dae7b2b1f6 Add test for LOB error event 2015-11-17 11:32:58 +11:00
..
README.md Add testWindows script target for running tests on Windows 2015-11-15 08:40:08 +11:00
accessTerminatedPoolAttributes.js Add the test suite 2015-07-20 14:42:12 +10:00
autoCommit.js Update tests for new functionality 2015-08-17 16:19:36 +10:00
autoCommitForSelect.js Add the test suite 2015-07-20 14:42:12 +10:00
binding.js Add test for PL/SQL block with empty outBinds 2015-11-15 08:26:46 +11:00
clobPlsqlString.js LOB test updates 2015-11-15 08:46:31 +11:00
clobexample.txt Update URL to reflect changed OTN hierarchy 2015-11-15 08:28:11 +11:00
columnMetadata.js Update tests for new functionality 2015-08-17 16:19:36 +10:00
connection.js Test typo 2015-09-25 18:06:58 +10:00
dataTypeAssist.js Added support for RAW data type by @bjouhier 2015-09-25 18:10:55 +10:00
dataTypeBinaryDouble.js Add some new data type tests 2015-09-25 17:18:25 +10:00
dataTypeBinaryFloat.js Add some new data type tests 2015-09-25 17:18:25 +10:00
dataTypeBlob.js Change event names in tests 2015-09-25 17:21:55 +10:00
dataTypeChar.js Refactor tests phase IV 2015-09-02 22:33:00 +10:00
dataTypeClob.js Add test for LOB error event 2015-11-17 11:32:58 +11:00
dataTypeDate.js Refactor tests phase IV 2015-09-02 22:33:00 +10:00
dataTypeFloat.js Refactor tests phase IV 2015-09-02 22:33:00 +10:00
dataTypeFloat2.js Refactor tests phase IV 2015-09-02 22:33:00 +10:00
dataTypeNchar.js Refactor tests phase IV 2015-09-02 22:33:00 +10:00
dataTypeNumber.js Refactor tests phase IV 2015-09-02 22:33:00 +10:00
dataTypeNumber2.js Refactor tests phase IV 2015-09-02 22:33:00 +10:00
dataTypeNvarchar2.js Refactor tests phase IV 2015-09-02 22:33:00 +10:00
dataTypeRaw.js Add test to hit NJS-028 2015-10-15 12:39:52 +11:00
dataTypeRowid.js Refactor tests phase IV 2015-09-02 22:33:00 +10:00
dataTypeTimestamp1.js Add test for PL/SQL block with empty outBinds 2015-11-15 08:26:46 +11:00
dataTypeTimestamp2.js Refactor tests phase IV 2015-09-02 22:33:00 +10:00
dataTypeTimestamp3.js Refactor tests phase IV 2015-09-02 22:33:00 +10:00
dataTypeTimestamp4.js Refactor tests phase IV 2015-09-02 22:33:00 +10:00
dataTypeTimestamp5.js Refactor tests phase IV 2015-09-02 22:33:00 +10:00
dataTypeTimestamp6.js Refactor tests phase IV 2015-09-02 22:33:00 +10:00
dataTypeVarchar2.js Refactor tests phase IV 2015-09-02 22:33:00 +10:00
dbConfig.js Update tests for new functionality 2015-08-17 16:19:36 +10:00
dmlReturning.js Add negative tests for DML RETURNING 2015-11-17 11:30:13 +11:00
examples.js Use new version attributes for JSON database data type tests 2015-10-15 16:05:37 +11:00
externalAuthentication.js Test updates and fix some line endings 2015-09-25 18:46:56 +10:00
fetchAs.js fetchAsString property value check 2015-09-25 18:03:07 +10:00
fuzzydinosaur.jpg Update tests for new functionality 2015-08-17 16:19:36 +10:00
getConnAfterPoolTerminate.js Add the test suite 2015-07-20 14:42:12 +10:00
list.txt Add test for LOB error event 2015-11-17 11:32:58 +11:00
lobResultSet.js LOB test updates 2015-11-15 08:46:31 +11:00
nestedCursor.js Update tests for new functionality 2015-08-17 16:19:36 +10:00
nullColumnValues.js Tidy up tests 2015-07-20 17:56:29 +10:00
pool.js Tidy up tests 2015-07-20 17:56:29 +10:00
poolTimeout.js Add the test suite 2015-07-20 14:42:12 +10:00
poolValidityAfterFailingTerminate.js Tidy up tests 2015-07-20 17:56:29 +10:00
properties.js Improve version attribute tests 2015-10-15 12:49:10 +11:00
releaseAfterFailingTerminate.js Tidy up tests 2015-07-20 17:56:29 +10:00
resultSet1.js Update tests for new functionality 2015-08-17 16:19:36 +10:00
resultSet2.js add maxRow 200 test case 2015-09-25 18:33:04 +10:00

README.md

Testing node-oracledb

Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.

You may not use the identified files except in compliance with the Apache License, Version 2.0 (the "License.")

You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.

See the License for the specific language governing permissions and limitations under the License.

The node-oracledb test suite uses 'mocha', 'should' and 'async'. See LICENSE.md for relevant licenses.

1. Preparations for running tests

1.1 Create a working directory

mkdir <some-directory> 
cd <some-directory>

1.2 Install node-oracledb

See INSTALL for installation requirements and more details.

Install with:

npm install oracledb

Alternatively use a GitHub clone:

git clone https://github.com/oracle/node-oracledb.git
npm install node-oracledb

1.3 Install test-dependent modules

The test suite uses mocha, async and should.

cd <some-directory>/node_modules/oracledb 
npm install

Note: Running npm install within oracledb/ directory will recompile oracledb module and install all its dependent modules which are listed in devDependencies field in package.json file. So 'mocha', 'async' and 'should' modules are installed by this command.

1.4 Configure Database credentials

The database credentials for node-oracledb test suite are defined in dbConfig.js file. You can set the credentials via environment variables or dbConfig.js file. Change the credentials to a user who has privileges to connect and create tables.

vi <some-directory>/node_modules/oracledb/test/dbConfig.js
module.exports = {
  user          : process.env.NODE_ORACLEDB_USER || "hr",
  password      : process.env.NODE_ORACLEDB_PASSWORD || "welcome",
  connectString : process.env.NODE_ORACLEDB_CONNECTIONSTRING || "localhost/orcl",
  externalAuth  : process.env.NODE_ORACLEDB_EXTERNALAUTH ? true : false
};

To use external authentication, set the externalAuth property to true. Also make sure Oracle Database and the authentication service have been appropriately configured. See Documentation for External Authentication for more details.

2. Running tests

2.1 Run the complete test suite

On Unix-like systems

cd <some-directory>/node_modules/oracledb 
npm test

This calls the test script defined in oracledb/package.json.

On Windows

cd <some-directory>/node_modules/oracledb 
npm run-script testWindows

This calls the testWindows script defined in oracledb/package.json. See npm scripts for more infomation about how npm handles "scripts" field of package.json.

2.2 Run specified test(s)

cd <some-directory>/node_modules/oracledb 
<mocha-executable-file-directory>/mocha test/<test-names>

See mochajs.org for more information on running tests with mocha.

Adding Tests

See CONTRIBUTING for general information on contribution requirements.

For easy correlation between results and test code, each test is assigned a number. The following number ranges have been chosen:

  • 1 - 20 are reserved for basic functional tests
  • 21 - 50 are reserved for data type supporting tests
  • 51 onwards are for other tests

Test List

See test/list.txt file for the list of existing tests.