JSPM

  • Created
  • Published
  • Downloads 732601
  • Score
    100M100P100Q189196F
  • License Apache-2.0

Node.js driver for Snowflake

Package Exports

  • snowflake-sdk
  • snowflake-sdk/index.js
  • snowflake-sdk/lib/core
  • snowflake-sdk/lib/core.js
  • snowflake-sdk/lib/http/node
  • snowflake-sdk/lib/http/node.js
  • snowflake-sdk/lib/logger
  • snowflake-sdk/lib/logger.js
  • snowflake-sdk/lib/logger/node
  • snowflake-sdk/lib/logger/node.js
  • snowflake-sdk/lib/util
  • snowflake-sdk/lib/util.js

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (snowflake-sdk) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme


NodeJS Driver for Snowflake


master npm apache

For production-affecting issues related to the driver, please create a case with Snowflake Support.

Install

Include snowflake-sdk in dependencies section in package.json

{
  "name": "<your_application_name>",
  "version": "<your_application_version>",
  "dependencies": {
    "...": "...",        
    "snowflake-sdk": "^1.6.22",
    "...": "..."
  }
}

And run the npm install

Docs

For detailed documentation and basic usage examples, please see the documentation at NodeJS Driver for Snowflake.

Test

Prepare for tests

Specify env variables:

export SNOWFLAKE_TEST_USER=<your_user>
export SNOWFLAKE_TEST_PASSWORD=<your_password>
export SNOWFLAKE_TEST_ACCOUNT=<your_account>
export SNOWFLAKE_TEST_WAREHOUSE=<your_warehouse>
export SNOWFLAKE_TEST_DATABASE=<your_database>
export SNOWFLAKE_TEST_SCHEMA=<your_schema>
export SNOWFLAKE_TEST_PROTOCOL=<your_snowflake_protocol>
export SNOWFLAKE_TEST_HOST=<your_snowflake_host>
export SNOWFLAKE_TEST_PORT=<your_snowflake_port>

Run hang webserver:

python3 ci/container/hang_webserver.py 12345 &

Run tests

Run unit tests:

npm test

or

npm test:unit

To run single test file use test:single script, e.g. run tests in test/unit/snowflake_test.js only:

npm run test:single -- test/unit/snowflake_test.js

Run integration tests:

npm test:integration

Getting the code coverage

  1. Go to nodejs project directory
cd snowflake-connector-nodejs
  1. Install the node connector
npm install .
  1. Install the nyc module which displays the code coverage
npm install nyc
  1. Edit the package.json file and replace the specified test with the one below:
"scripts": {
  "test": "nyc mocha test/**/*.js"
},
  1. Using git bash, run the "npm test" command and include the connection parameters in the same line:
SNOWFLAKE_TEST_USER="user" SNOWFLAKE_TEST_PASSWORD="password" SNOWFLAKE_TEST_ACCOUNT="account" SNOWFLAKE_TEST_WAREHOUSE="warehouse" SNOWFLAKE_TEST_DATABASE="db" SNOWFLAKE_TEST_SCHEMA="schema" npm test
  1. The code coverage results will be displayed in the console when the test finishes executing
    Note: git bash is the console used for installing the node connector, the nyc module, and running "npm test"

Package

The npm package can be built by the command:

npm pack

Note it is not required to build a package to run tests blow.

Development

Reformat source code

Use WebStorm code style file to format the source code.

format.sh -mask "*.js" -settings $(pwd)/webstorm-codestyle.xml -R $(pwd)/lib/ -R $(pwd)/test -R $(pwd)/system_test