diff --git a/libindy/ci/ubuntu.dockerfile b/libindy/ci/ubuntu.dockerfile index 33a7394e11..c4335926b8 100755 --- a/libindy/ci/ubuntu.dockerfile +++ b/libindy/ci/ubuntu.dockerfile @@ -27,7 +27,7 @@ RUN apt-get update && \ jq # install nodejs and npm -RUN curl -sL https://deb.nodesource.com/setup_8.x | bash - +RUN curl -sL https://deb.nodesource.com/setup_10.x | bash - RUN apt-get install -y nodejs RUN pip3 install -U \ diff --git a/libindy/ci/ubuntu18.dockerfile b/libindy/ci/ubuntu18.dockerfile index fe12996430..26cbdbbf17 100644 --- a/libindy/ci/ubuntu18.dockerfile +++ b/libindy/ci/ubuntu18.dockerfile @@ -37,7 +37,7 @@ ENV JAVA_HOME /usr/lib/jvm/java-8-openjdk-amd64 RUN apt-get update && apt-get install -y maven # install nodejs and npm -RUN curl -sL https://deb.nodesource.com/setup_10.x | bash - +RUN curl -sL https://deb.nodesource.com/setup_12.x | bash - RUN apt-get install -y nodejs RUN apt-get install -y wget diff --git a/wrappers/nodejs/README.md b/wrappers/nodejs/README.md index 275d64b1d8..e9f228ba7b 100644 --- a/wrappers/nodejs/README.md +++ b/wrappers/nodejs/README.md @@ -31,7 +31,7 @@ This module has a native compile step. It compiles C++ code and dynamically link You will need: -* C++ build tools and Python 2. See [this](https://github.com/nodejs/node-gyp#installation) for platform recommendations. +* C++ build tools and Python 3.6+. See [this](https://github.com/nodejs/node-gyp#installation) for platform recommendations. * `libindy` v1.6+ in your system library path. (i.e. `/usr/lib/libindy.so` for linux) Then you can install via npm: diff --git a/wrappers/nodejs/package.json b/wrappers/nodejs/package.json index 580deb3f4c..617fe1484b 100644 --- a/wrappers/nodejs/package.json +++ b/wrappers/nodejs/package.json @@ -15,7 +15,7 @@ "main": "src/index.js", "gypfile": true, "engines": { - "node": ">=8" + "node": ">=10" }, "files": [ "src", @@ -30,13 +30,16 @@ "dependencies": { "bindings": "^1.3.1", "nan": "^2.11.1", - "node-gyp": "^4.0.0" + "node-gyp": "^8.0.0" }, "devDependencies": { - "ava": "^1.4.1", + "ava": "^3.15.0", "cuid": "^2.1.4", "home-dir": "^1.0.0", - "standard": "^12.0.1", - "tempy": "^0.3.0" + "standard": "^16.0.3", + "tempy": "^1.0.0" + }, + "ava": { + "timeout": "2m" } } diff --git a/wrappers/nodejs/src/IndyError.js b/wrappers/nodejs/src/IndyError.js index 2b0eac6e17..ff38da6f67 100644 --- a/wrappers/nodejs/src/IndyError.js +++ b/wrappers/nodejs/src/IndyError.js @@ -1,7 +1,6 @@ -var util = require('util') -var capi = require('./indyBinding') +const capi = require('./indyBinding') -var errors = { +const errors = { 100: 'CommonInvalidParam1', 101: 'CommonInvalidParam2', 102: 'CommonInvalidParam3', @@ -61,29 +60,31 @@ var errors = { 706: 'TransactionNotAllowedError' } -function IndyError (err) { - Error.call(this) - Error.captureStackTrace(this, this.constructor) - this.name = this.constructor.name - if (errors.hasOwnProperty(err)) { - this.message = errors[err] - this.indyCode = err - this.indyName = errors[err] - try { - this.indyCurrentErrorJson = capi.getCurrentError() - var details = JSON.parse(this.indyCurrentErrorJson) - if (typeof details.message === 'string') { - this.indyMessage = details.message - } - if (typeof details.backtrace === 'string') { - this.indyBacktrace = details.backtrace - } - } catch (e) { +class IndyError extends Error { + constructor (err) { + super() + + this.name = this.constructor.name + Error.captureStackTrace(this, IndyError) + + if (Object.prototype.hasOwnProperty.call(errors, err)) { + this.message = errors[err] + this.indyCode = err + this.indyName = errors[err] + try { + this.indyCurrentErrorJson = capi.getCurrentError() + const details = JSON.parse(this.indyCurrentErrorJson) + if (typeof details.message === 'string') { + this.indyMessage = details.message + } + if (typeof details.backtrace === 'string') { + this.indyBacktrace = details.backtrace + } + } catch (e) {} + } else { + this.message = err + '' } - } else { - this.message = (err + '') } } -util.inherits(IndyError, Error) module.exports = IndyError diff --git a/wrappers/nodejs/src/index.js b/wrappers/nodejs/src/index.js index 09f74c94a5..6ed2766598 100644 --- a/wrappers/nodejs/src/index.js +++ b/wrappers/nodejs/src/index.js @@ -1,9 +1,9 @@ -var capi = require('./indyBinding') -var wrapIndyCallback = require('./wrapIndyCallback') -var IndyError = require('./IndyError') +const capi = require('./indyBinding') +const wrapIndyCallback = require('./wrapIndyCallback') +const IndyError = require('./IndyError') function toJson (val) { - if (val === null || val === void 0) { + if (val === null || val === undefined) { return null } if (typeof val === 'string') { @@ -22,26 +22,26 @@ function fromJson (val) { return val } -var indy = {} +const indy = {} indy.capi = capi // if you want to skip the json dance, IndyError, and promise support indy.setRuntimeConfig = function setRuntimeConfig (config) { - var err = capi.setRuntimeConfig(toJson(config)) + const err = capi.setRuntimeConfig(toJson(config)) if (err !== 0) { throw new IndyError(err) } } indy.setDefaultLogger = function setDefaultLogger (pattern) { - var err = capi.setDefaultLogger(pattern) + const err = capi.setDefaultLogger(pattern) if (err !== 0) { throw new IndyError(err) } } indy.setLogger = function setLogger (logFn) { - var err = capi.setLogger(logFn) + const err = capi.setLogger(logFn) if (err !== 0) { throw new IndyError(err) } diff --git a/wrappers/nodejs/src/indy.cc b/wrappers/nodejs/src/indy.cc index f399f82065..c40688d404 100644 --- a/wrappers/nodejs/src/indy.cc +++ b/wrappers/nodejs/src/indy.cc @@ -213,6 +213,8 @@ class IndyCallback : public Nan::AsyncResource { IndyCallback* icb = static_cast(async->data); icbmap.erase(icb->handle); + v8::Local context = Nan::GetCurrentContext(); + v8::Local tuple; v8::Local argv[2]; argv[0] = Nan::New(icb->err); @@ -231,8 +233,8 @@ class IndyCallback : public Nan::AsyncResource { break; case CB_HANDLE_U32: tuple = Nan::New(); - tuple->Set(0, Nan::New(icb->handle0)); - tuple->Set(1, Nan::New(icb->u32int0)); + (void)tuple->Set(context, 0, Nan::New(icb->handle0)); + (void)tuple->Set(context, 1, Nan::New(icb->u32int0)); argv[1] = tuple; break; case CB_I32: @@ -240,8 +242,8 @@ class IndyCallback : public Nan::AsyncResource { break; case CB_STRING_I64: tuple = Nan::New(); - tuple->Set(0, toJSString(icb->str0)); - tuple->Set(1, Nan::New(icb->i64int0)); + (void)tuple->Set(context, 0, toJSString(icb->str0)); + (void)tuple->Set(context, 1, Nan::New(icb->i64int0)); argv[1] = tuple; break; case CB_BUFFER: @@ -249,28 +251,28 @@ class IndyCallback : public Nan::AsyncResource { break; case CB_STRING_BUFFER: tuple = Nan::New(); - tuple->Set(0, toJSString(icb->str0)); - tuple->Set(1, Nan::NewBuffer(icb->buffer0data, icb->buffer0len).ToLocalChecked()); + (void)tuple->Set(context, 0, toJSString(icb->str0)); + (void)tuple->Set(context, 1, Nan::NewBuffer(icb->buffer0data, icb->buffer0len).ToLocalChecked()); argv[1] = tuple; break; case CB_STRING_STRING: tuple = Nan::New(); - tuple->Set(0, toJSString(icb->str0)); - tuple->Set(1, toJSString(icb->str1)); + (void)tuple->Set(context, 0, toJSString(icb->str0)); + (void)tuple->Set(context, 1, toJSString(icb->str1)); argv[1] = tuple; break; case CB_STRING_STRING_TIMESTAMP: tuple = Nan::New(); - tuple->Set(0, toJSString(icb->str0)); - tuple->Set(1, toJSString(icb->str1)); - tuple->Set(2, Nan::New(icb->timestamp0)); + (void)tuple->Set(context, 0, toJSString(icb->str0)); + (void)tuple->Set(context, 1, toJSString(icb->str1)); + (void)tuple->Set(context, 2, Nan::New(icb->timestamp0)); argv[1] = tuple; break; case CB_STRING_STRING_STRING: tuple = Nan::New(); - tuple->Set(0, toJSString(icb->str0)); - tuple->Set(1, toJSString(icb->str1)); - tuple->Set(2, toJSString(icb->str2)); + (void)tuple->Set(context, 0, toJSString(icb->str0)); + (void)tuple->Set(context, 1, toJSString(icb->str1)); + (void)tuple->Set(context, 2, toJSString(icb->str2)); argv[1] = tuple; break; } diff --git a/wrappers/nodejs/src/wrapIndyCallback.js b/wrappers/nodejs/src/wrapIndyCallback.js index c804561fe7..95d6e70a12 100644 --- a/wrappers/nodejs/src/wrapIndyCallback.js +++ b/wrappers/nodejs/src/wrapIndyCallback.js @@ -1,7 +1,7 @@ -var IndyError = require('./IndyError') +const IndyError = require('./IndyError') function wrapIndyCallback (cb, mapResponse) { - var promise + let promise if (!cb) { promise = new Promise(function (resolve, reject) { cb = function cb (err, data) { diff --git a/wrappers/nodejs/test/anoncreds.js b/wrappers/nodejs/test/anoncreds.js index fbe1f5f066..1f188fb031 100644 --- a/wrappers/nodejs/test/anoncreds.js +++ b/wrappers/nodejs/test/anoncreds.js @@ -1,100 +1,100 @@ -var test = require('ava') -var indy = require('../') -var cuid = require('cuid') -var initTestPool = require('./helpers/initTestPool') -var tempy = require('tempy') +const test = require('ava') +const indy = require('../') +const cuid = require('cuid') +const initTestPool = require('./helpers/initTestPool') +const tempy = require('tempy') test('anoncreds', async function (t) { - var pool = await initTestPool() - var walletConfig = { 'id': 'wallet-' + cuid() } - var walletCredentials = { 'key': 'key' } + const pool = await initTestPool() + const walletConfig = { id: 'wallet-' + cuid() } + const walletCredentials = { key: 'key' } await indy.createWallet(walletConfig, walletCredentials) - var wh = await indy.openWallet(walletConfig, walletCredentials) - var issuerDid = 'NcYxiDXkpYi6ov5FcYDi1e' - var proverDid = 'VsKV7grR1BUE29mG2Fm2kX' + const wh = await indy.openWallet(walletConfig, walletCredentials) + const issuerDid = 'NcYxiDXkpYi6ov5FcYDi1e' + const proverDid = 'VsKV7grR1BUE29mG2Fm2kX' // Issuer create a credential schema - var [schemaId, schema] = await indy.issuerCreateSchema(issuerDid, 'gvt', '1.0', ['age', 'height', 'name']) + const [schemaId, schema] = await indy.issuerCreateSchema(issuerDid, 'gvt', '1.0', ['age', 'height', 'name']) t.not(typeof schema, 'string') - var [credDefId, credDef] = await indy.issuerCreateAndStoreCredentialDef(wh, issuerDid, schema, 'tag1', 'CL', { + const [credDefId, credDef] = await indy.issuerCreateAndStoreCredentialDef(wh, issuerDid, schema, 'tag1', 'CL', { support_revocation: true }) t.not(typeof credDef, 'string') // Issuer create Revocation Registry - var tailsWriterConfig = { - 'base_dir': tempy.directory(), - 'uri_pattern': '' + const tailsWriterConfig = { + base_dir: tempy.directory(), + uri_pattern: '' } - var tailsWriterHandle = await indy.openBlobStorageWriter('default', tailsWriterConfig) - var [revocRegId, revocRegDef, revocRegEntry] = await indy.issuerCreateAndStoreRevocReg(wh, issuerDid, null, 'tag1', credDefId, { + const tailsWriterHandle = await indy.openBlobStorageWriter('default', tailsWriterConfig) + const [revocRegId, revocRegDef, revocRegEntry] = await indy.issuerCreateAndStoreRevocReg(wh, issuerDid, null, 'tag1', credDefId, { max_cred_num: 5 }, tailsWriterHandle) t.not(typeof revocRegDef, 'string') t.not(typeof revocRegEntry, 'string') // Prover create Master Secret - var masterSecretName = 'master_secret' + const masterSecretName = 'master_secret' await indy.proverCreateMasterSecret(wh, masterSecretName) // Issuer create credential Offer - var credOffer = await indy.issuerCreateCredentialOffer(wh, credDefId) + const credOffer = await indy.issuerCreateCredentialOffer(wh, credDefId) // Prover create credential Request - var [credReq, credReqMetadata] = await indy.proverCreateCredentialReq(wh, proverDid, credOffer, credDef, 'master_secret') + const [credReq, credReqMetadata] = await indy.proverCreateCredentialReq(wh, proverDid, credOffer, credDef, 'master_secret') t.not(typeof credReq, 'string') t.not(typeof credReqMetadata, 'string') // Issuer open Tails reader - var blobReaderHandle = await indy.openBlobStorageReader('default', tailsWriterConfig) + const blobReaderHandle = await indy.openBlobStorageReader('default', tailsWriterConfig) // Issuer create credential for credential Request // note that encoding is not standardized by Indy except that 32-bit integers are encoded as themselves. IS-786 - var [cred, revId, revDelta] = await indy.issuerCreateCredential(wh, credOffer, credReq, { - name: { 'raw': 'Alex', 'encoded': '1139481716457488690172217916278103335' }, - height: { 'raw': '175', 'encoded': '175' }, - age: { 'raw': '28', 'encoded': '28' } + const [cred, revId, revDelta] = await indy.issuerCreateCredential(wh, credOffer, credReq, { + name: { raw: 'Alex', encoded: '1139481716457488690172217916278103335' }, + height: { raw: '175', encoded: '175' }, + age: { raw: '28', encoded: '28' } }, revocRegId, blobReaderHandle) t.not(typeof cred, 'string') // Prover process and store credential - var outCredId = await indy.proverStoreCredential(wh, 'cred_1_id', credReqMetadata, cred, credDef, revocRegDef) + const outCredId = await indy.proverStoreCredential(wh, 'cred_1_id', credReqMetadata, cred, credDef, revocRegDef) t.is(typeof outCredId, 'string') // Prover get Credential - var credential = await indy.proverGetCredential(wh, outCredId) + const credential = await indy.proverGetCredential(wh, outCredId) t.not(typeof credential, 'string') t.is(credential.schema_id, schemaId) t.is(credential.cred_def_id, credDefId) // Prover searches Credentials - var [sh, totalCount] = await indy.proverSearchCredentials(wh, { schema_id: schemaId }) + let [sh, totalCount] = await indy.proverSearchCredentials(wh, { schema_id: schemaId }) t.truthy(totalCount > 0) - var credentials = await indy.proverFetchCredentials(sh, totalCount) + let credentials = await indy.proverFetchCredentials(sh, totalCount) t.truthy(Array.isArray(credentials)) t.truthy(credentials.length > 0) t.is(credentials[0].schema_id, schemaId) await indy.proverCloseCredentialsSearch(sh) - var nonce = await indy.generateNonce() + const nonce = await indy.generateNonce() // Prover gets credentials for Proof Request - var proofReq = { - 'nonce': nonce, - 'name': 'proof_req_1', - 'version': '0.1', - 'requested_attributes': { - 'attr1_referent': { 'name': 'name' } + let proofReq = { + nonce: nonce, + name: 'proof_req_1', + version: '0.1', + requested_attributes: { + attr1_referent: { name: 'name' } }, - 'requested_predicates': { - 'predicate1_referent': { 'name': 'age', 'p_type': '>=', 'p_value': 18 } + requested_predicates: { + predicate1_referent: { name: 'age', p_type: '>=', p_value: 18 } }, - 'non_revoked': { 'from': 80, 'to': 100 } + non_revoked: { from: 80, to: 100 } } - var credentialsForProof = await indy.proverGetCredentialsForProofReq(wh, proofReq) + const credentialsForProof = await indy.proverGetCredentialsForProofReq(wh, proofReq) credentials = await indy.proverGetCredentials(wh) t.truthy(Array.isArray(credentials)) @@ -111,18 +111,18 @@ test('anoncreds', async function (t) { credentials = await indy.proverFetchCredentialsForProofReq(sh, 'attr1_referent', 100) t.truthy(Array.isArray(credentials)) t.truthy(credentials.length > 0) - t.is(credentials[0]['cred_info'].schema_id, schemaId) + t.is(credentials[0].cred_info.schema_id, schemaId) credentials = await indy.proverFetchCredentialsForProofReq(sh, 'predicate1_referent', 100) t.truthy(Array.isArray(credentials)) t.truthy(credentials.length > 0) - t.is(credentials[0]['cred_info'].schema_id, schemaId) + t.is(credentials[0].cred_info.schema_id, schemaId) await indy.proverCloseCredentialsSearchForProofReq(sh) // Prover gets credentials for Proof Request - var timestamp = 100 - var revState = await indy.createRevocationState(blobReaderHandle, revocRegDef, revDelta, timestamp, revId) + let timestamp = 100 + let revState = await indy.createRevocationState(blobReaderHandle, revocRegDef, revDelta, timestamp, revId) t.is(revState.timestamp, 100) timestamp = 101 @@ -130,68 +130,68 @@ test('anoncreds', async function (t) { t.is(revState.timestamp, 101) // Prover create Proof for Proof Request - var referent = credentialsForProof['attrs']['attr1_referent'][0]['cred_info']['referent'] - var requestedCredentials = { - 'self_attested_attributes': {}, - 'requested_attributes': { 'attr1_referent': { 'cred_id': referent, 'revealed': true, 'timestamp': timestamp } }, - 'requested_predicates': { 'predicate1_referent': { 'cred_id': referent, 'timestamp': timestamp } } + const referent = credentialsForProof.attrs.attr1_referent[0].cred_info.referent + const requestedCredentials = { + self_attested_attributes: {}, + requested_attributes: { attr1_referent: { cred_id: referent, revealed: true, timestamp: timestamp } }, + requested_predicates: { predicate1_referent: { cred_id: referent, timestamp: timestamp } } } - var schemas = {} + const schemas = {} schemas[schemaId] = schema - var credentialDefs = {} + const credentialDefs = {} credentialDefs[credDefId] = credDef - var revocStates = {} + const revocStates = {} revocStates[revocRegId] = {} revocStates[revocRegId][timestamp] = revState - var proof = await indy.proverCreateProof(wh, proofReq, requestedCredentials, masterSecretName, schemas, credentialDefs, revocStates) + const proof = await indy.proverCreateProof(wh, proofReq, requestedCredentials, masterSecretName, schemas, credentialDefs, revocStates) // Verify the proof - t.is(proof['requested_proof']['revealed_attrs']['attr1_referent']['raw'], 'Alex') + t.is(proof.requested_proof.revealed_attrs.attr1_referent.raw, 'Alex') - var revocRefDefs = {} + const revocRefDefs = {} revocRefDefs[revocRegId] = revocRegDef - var revocRegs = {} + const revocRegs = {} revocRegs[revocRegId] = {} revocRegs[revocRegId][timestamp] = revDelta - var isValid = await indy.verifierVerifyProof(proofReq, proof, schemas, credentialDefs, revocRefDefs, revocRegs) + const isValid = await indy.verifierVerifyProof(proofReq, proof, schemas, credentialDefs, revocRefDefs, revocRegs) t.is(isValid, true) // Revoke the credential - var revocedDelta = await indy.issuerRevokeCredential(wh, blobReaderHandle, revocRegId, revId) + const revocedDelta = await indy.issuerRevokeCredential(wh, blobReaderHandle, revocRegId, revId) await indy.issuerMergeRevocationRegistryDeltas(revDelta, revocedDelta) // Verify the proof with changed requested predicate value proofReq = { - 'nonce': nonce, - 'name': 'proof_req_1', - 'version': '0.1', - 'requested_attributes': { - 'attr1_referent': { 'name': 'name' } + nonce: nonce, + name: 'proof_req_1', + version: '0.1', + requested_attributes: { + attr1_referent: { name: 'name' } }, - 'requested_predicates': { - 'predicate1_referent': { 'name': 'age', 'p_type': '>=', 'p_value': 50 } // requested value is greater than actual (28) + requested_predicates: { + predicate1_referent: { name: 'age', p_type: '>=', p_value: 50 } // requested value is greater than actual (28) }, - 'non_revoked': { 'from': 80, 'to': 100 } + non_revoked: { from: 80, to: 100 } } - var err = await t.throwsAsync( + let err = await t.throwsAsync( indy.verifierVerifyProof(proofReq, proof, schemas, credentialDefs, revocRefDefs, revocRegs)) t.is(err.indyName, 'AnoncredsProofRejected') // Rotate credential definition - var tempCredDef = await indy.issuerRotateCredentialDefStart(wh, credDefId, null) + const tempCredDef = await indy.issuerRotateCredentialDefStart(wh, credDefId, null) t.not(cred, tempCredDef) await indy.issuerRotateCredentialDefApply(wh, credDefId) - var qualified = 'did:sov:NcYxiDXkpYi6ov5FcYDi1e' - var unqualified = 'NcYxiDXkpYi6ov5FcYDi1e' + const qualified = 'did:sov:NcYxiDXkpYi6ov5FcYDi1e' + const unqualified = 'NcYxiDXkpYi6ov5FcYDi1e' t.is(unqualified, await indy.toUnqualified(qualified)) t.is(unqualified, await indy.toUnqualified(unqualified)) diff --git a/wrappers/nodejs/test/blob.js b/wrappers/nodejs/test/blob.js index 76b557c8c0..23f4775252 100644 --- a/wrappers/nodejs/test/blob.js +++ b/wrappers/nodejs/test/blob.js @@ -1,22 +1,22 @@ -var test = require('ava') -var indy = require('../') -var tempy = require('tempy') +const test = require('ava') +const indy = require('../') +const tempy = require('tempy') test('blob_storage', async function (t) { - var config = { - 'base_dir': tempy.directory(), - 'uri_pattern': '' + const config = { + base_dir: tempy.directory(), + uri_pattern: '' } - var wh = await indy.openBlobStorageWriter('default', config) + const wh = await indy.openBlobStorageWriter('default', config) t.is(typeof wh, 'number') t.truthy(wh >= 0) - var rh = await indy.openBlobStorageReader('default', config) + const rh = await indy.openBlobStorageReader('default', config) t.is(typeof rh, 'number') t.truthy(rh >= 0) - var error = await t.throwsAsync(indy.openBlobStorageWriter('foo', config)) + let error = await t.throwsAsync(indy.openBlobStorageWriter('foo', config)) t.is(error.indyName, 'CommonInvalidStructure') error = await t.throwsAsync(indy.openBlobStorageWriter('default', null)) diff --git a/wrappers/nodejs/test/cache.js b/wrappers/nodejs/test/cache.js index 727c3fa0cc..12872d84af 100644 --- a/wrappers/nodejs/test/cache.js +++ b/wrappers/nodejs/test/cache.js @@ -1,7 +1,7 @@ -var test = require('ava') -var indy = require('../') -var cuid = require('cuid') -var initTestPool = require('./helpers/initTestPool') +const test = require('ava') +const indy = require('../') +const cuid = require('cuid') +const initTestPool = require('./helpers/initTestPool') function sleep (ms) { return new Promise(function (resolve) { @@ -10,53 +10,53 @@ function sleep (ms) { } test('cache', async function (t) { - var pool = await initTestPool() - var walletConfig = { 'id': 'wallet-' + cuid() } - var walletCredentials = { 'key': 'key' } + const pool = await initTestPool() + const walletConfig = { id: 'wallet-' + cuid() } + const walletCredentials = { key: 'key' } await indy.createWallet(walletConfig, walletCredentials) - var wh = await indy.openWallet(walletConfig, walletCredentials) - var [trusteeDid] = await indy.createAndStoreMyDid(wh, { seed: '000000000000000000000000Trustee1' }) - var [myDid, myVerkey] = await indy.createAndStoreMyDid(wh, { }) - var schemaName = 'schema-' + cuid() - var [schemaId, schema] = await indy.issuerCreateSchema(myDid, schemaName, '1.0', ['name', 'age']) + const wh = await indy.openWallet(walletConfig, walletCredentials) + const [trusteeDid] = await indy.createAndStoreMyDid(wh, { seed: '000000000000000000000000Trustee1' }) + const [myDid, myVerkey] = await indy.createAndStoreMyDid(wh, { }) + const schemaName = 'schema-' + cuid() + let [schemaId, schema] = await indy.issuerCreateSchema(myDid, schemaName, '1.0', ['name', 'age']) // Nym - var nreq = await indy.buildNymRequest(trusteeDid, myDid, myVerkey, null, 'TRUSTEE') - var nres = await indy.signAndSubmitRequest(pool.handle, wh, trusteeDid, nreq) + const nreq = await indy.buildNymRequest(trusteeDid, myDid, myVerkey, null, 'TRUSTEE') + const nres = await indy.signAndSubmitRequest(pool.handle, wh, trusteeDid, nreq) t.is(nres.result.txn.data.verkey, myVerkey) - var defaultGetCacheOptions = { - 'noCache': false, - 'noUpdate': false, - 'noStore': false, - 'minFresh': -1 + const defaultGetCacheOptions = { + noCache: false, + noUpdate: false, + noStore: false, + minFresh: -1 } - var defaultPurgeCacheOptions = { - 'maxAge': -1 + const defaultPurgeCacheOptions = { + maxAge: -1 } // Schema - var req = await indy.buildSchemaRequest(myDid, schema) + let req = await indy.buildSchemaRequest(myDid, schema) req = await indy.signRequest(wh, myDid, req) await indy.submitRequest(pool.handle, req) await sleep(5 * 1000) - var schemaRes = await indy.getSchema(pool.handle, wh, myDid, schemaId, defaultGetCacheOptions) + const schemaRes = await indy.getSchema(pool.handle, wh, myDid, schemaId, defaultGetCacheOptions) t.is(schemaRes.name, schema.name) schema = schemaRes await indy.purgeSchemaCache(wh, defaultPurgeCacheOptions) // Cred Def - var [credDefId, credDef] = await indy.issuerCreateAndStoreCredentialDef(wh, myDid, schema, 'TAG', 'CL', { support_revocation: false }) + const [credDefId, credDef] = await indy.issuerCreateAndStoreCredentialDef(wh, myDid, schema, 'TAG', 'CL', { support_revocation: false }) req = await indy.buildCredDefRequest(myDid, credDef) await indy.signAndSubmitRequest(pool.handle, wh, myDid, req) await sleep(5 * 1000) - var credDefRes = await indy.getCredDef(pool.handle, wh, myDid, credDefId, defaultGetCacheOptions) + const credDefRes = await indy.getCredDef(pool.handle, wh, myDid, credDefId, defaultGetCacheOptions) t.is(credDefRes.id, credDef.id) await indy.purgeCredDefCache(wh, defaultPurgeCacheOptions) diff --git a/wrappers/nodejs/test/crypto.js b/wrappers/nodejs/test/crypto.js index a40c0d7d47..3d6af49d0e 100644 --- a/wrappers/nodejs/test/crypto.js +++ b/wrappers/nodejs/test/crypto.js @@ -1,29 +1,29 @@ -var test = require('ava') -var indy = require('../') -var cuid = require('cuid') -var initTestPool = require('./helpers/initTestPool') +const test = require('ava') +const indy = require('../') +const cuid = require('cuid') +const initTestPool = require('./helpers/initTestPool') test('crypto', async function (t) { - var pool = await initTestPool() - var walletConfig = { 'id': 'wallet-' + cuid() } - var walletCredentials = { 'key': 'key' } + const pool = await initTestPool() + const walletConfig = { id: 'wallet-' + cuid() } + const walletCredentials = { key: 'key' } await indy.createWallet(walletConfig, walletCredentials) - var wh = await indy.openWallet(walletConfig, walletCredentials) + const wh = await indy.openWallet(walletConfig, walletCredentials) // Create Key - var error = await t.throwsAsync(indy.createKey(-1, {})) + const error = await t.throwsAsync(indy.createKey(-1, {})) t.is(error.indyName, 'WalletInvalidHandle') - var verkey = await indy.createKey(wh, {}) + let verkey = await indy.createKey(wh, {}) t.is(typeof verkey, 'string') - var seed1 = '00000000000000000000000000000My1' - verkey = await indy.createKey(wh, { 'seed': seed1 }) + const seed1 = '00000000000000000000000000000My1' + verkey = await indy.createKey(wh, { seed: seed1 }) t.is(typeof verkey, 'string') // Sign + Verify - var message = Buffer.from('{"reqId":1496822211362017764}', 'utf8') - var signature = await indy.cryptoSign(wh, verkey, message) + const message = Buffer.from('{"reqId":1496822211362017764}', 'utf8') + const signature = await indy.cryptoSign(wh, verkey, message) t.true(Buffer.isBuffer(signature)) t.is(signature.toString('base64'), 'qdcI4QdrbgnBosrWokLu0z/RDMQI0zcbeF7MkzVoZz08+e1/Zy7c3wpfSzX10vGXvykwHgkQTvydztKRfYVtCw==') t.true(await indy.cryptoVerify(verkey, message, signature)) @@ -31,17 +31,17 @@ test('crypto', async function (t) { // Metadata await indy.setKeyMetadata(wh, verkey, 'foobar') - var metadata = await indy.getKeyMetadata(wh, verkey) + const metadata = await indy.getKeyMetadata(wh, verkey) t.is(metadata, 'foobar') // Auth - var [, stewardVerkey] = await indy.createAndStoreMyDid(wh, { seed: '000000000000000000000000Steward1' }) - var [, trusteeVerkey] = await indy.createAndStoreMyDid(wh, { seed: '000000000000000000000000Trustee1' }) + const [, stewardVerkey] = await indy.createAndStoreMyDid(wh, { seed: '000000000000000000000000Steward1' }) + const [, trusteeVerkey] = await indy.createAndStoreMyDid(wh, { seed: '000000000000000000000000Trustee1' }) - var encrypted = await indy.cryptoAuthCrypt(wh, stewardVerkey, trusteeVerkey, message) + let encrypted = await indy.cryptoAuthCrypt(wh, stewardVerkey, trusteeVerkey, message) t.true(Buffer.isBuffer(encrypted)) - var decrypted = await indy.cryptoAuthDecrypt(wh, trusteeVerkey, encrypted) + let decrypted = await indy.cryptoAuthDecrypt(wh, trusteeVerkey, encrypted) t.is(decrypted[0], stewardVerkey) t.true(Buffer.isBuffer(decrypted[1])) t.is(decrypted[1].toString('utf8'), message.toString('utf8')) @@ -55,19 +55,19 @@ test('crypto', async function (t) { t.is(decrypted.toString('utf8'), message.toString('utf8')) // Pack Auth Crypt - var [, senderVerkey] = await indy.createAndStoreMyDid(wh, {}) - var receiverKeys = [trusteeVerkey, stewardVerkey] + const [, senderVerkey] = await indy.createAndStoreMyDid(wh, {}) + const receiverKeys = [trusteeVerkey, stewardVerkey] - var packedMessage = await indy.packMessage(wh, message, receiverKeys, senderVerkey) + let packedMessage = await indy.packMessage(wh, message, receiverKeys, senderVerkey) t.true(Buffer.isBuffer(packedMessage)) - var unpackedMessage = await indy.unpackMessage(wh, packedMessage) + let unpackedMessage = await indy.unpackMessage(wh, packedMessage) t.true(Buffer.isBuffer(unpackedMessage)) unpackedMessage = JSON.parse(unpackedMessage.toString('utf8')) - t.is(unpackedMessage['message'], message.toString('utf8')) - t.is(unpackedMessage['sender_verkey'], senderVerkey) - t.is(unpackedMessage['recipient_verkey'], trusteeVerkey) + t.is(unpackedMessage.message, message.toString('utf8')) + t.is(unpackedMessage.sender_verkey, senderVerkey) + t.is(unpackedMessage.recipient_verkey, trusteeVerkey) // Pack Anon Crypt packedMessage = await indy.packMessage(wh, message, receiverKeys, null) @@ -77,9 +77,9 @@ test('crypto', async function (t) { t.true(Buffer.isBuffer(unpackedMessage)) unpackedMessage = JSON.parse(unpackedMessage.toString('utf8')) - t.is(unpackedMessage['message'], message.toString('utf8')) - t.is(unpackedMessage['sender_verkey'], undefined) - t.is(unpackedMessage['recipient_verkey'], trusteeVerkey) + t.is(unpackedMessage.message, message.toString('utf8')) + t.is(unpackedMessage.sender_verkey, undefined) + t.is(unpackedMessage.recipient_verkey, trusteeVerkey) await indy.closeWallet(wh) await indy.deleteWallet(walletConfig, walletCredentials) diff --git a/wrappers/nodejs/test/did.js b/wrappers/nodejs/test/did.js index ddd339e7dc..050e6f6c5d 100644 --- a/wrappers/nodejs/test/did.js +++ b/wrappers/nodejs/test/did.js @@ -1,18 +1,18 @@ -var test = require('ava') -var indy = require('../') -var cuid = require('cuid') -var initTestPool = require('./helpers/initTestPool') +const test = require('ava') +const indy = require('../') +const cuid = require('cuid') +const initTestPool = require('./helpers/initTestPool') test('did', async function (t) { - var pool = await initTestPool() - var walletConfig = { 'id': 'wallet-' + cuid() } - var walletCredentials = { 'key': 'key' } + const pool = await initTestPool() + const walletConfig = { id: 'wallet-' + cuid() } + const walletCredentials = { key: 'key' } await indy.createWallet(walletConfig, walletCredentials) - var wh = await indy.openWallet(walletConfig, walletCredentials) + const wh = await indy.openWallet(walletConfig, walletCredentials) // List, create, and get t.deepEqual(await indy.listMyDidsWithMeta(wh), []) - var [did, verkey] = await indy.createAndStoreMyDid(wh, { seed: '000000000000000000000000Steward1' }) + let [did, verkey] = await indy.createAndStoreMyDid(wh, { seed: '000000000000000000000000Steward1' }) t.deepEqual(await indy.listMyDidsWithMeta(wh), [ { did: did, metadata: null, verkey: verkey, tempVerkey: null } ]) @@ -20,11 +20,11 @@ test('did', async function (t) { t.is(await indy.keyForDid(pool.handle, wh, did), verkey) // Abbreviate - var abbr = await indy.abbreviateVerkey(did, verkey) + const abbr = await indy.abbreviateVerkey(did, verkey) t.not(abbr, verkey) // Replace - var verkey2 = await indy.replaceKeysStart(wh, did, {}) + const verkey2 = await indy.replaceKeysStart(wh, did, {}) t.is(typeof verkey2, 'string') t.not(verkey2, verkey) t.is(await indy.keyForLocalDid(wh, did), verkey, 'the verkey should not be replaced yet') @@ -36,14 +36,14 @@ test('did', async function (t) { await indy.storeTheirDid(wh, { did: 'VsKV7grR1BUE29mG2Fm2kX', verkey: 'GjZWsBLgZCR18aL468JAT7w9CZRiBnpxUPPgyQxh4voa' }) // Endpoint - var endpoint = '127.0.0.1:9700' + const endpoint = '127.0.0.1:9700' await indy.setEndpointForDid(wh, did, endpoint, verkey) - var data = await indy.getEndpointForDid(wh, -1, did) + let data = await indy.getEndpointForDid(wh, -1, did) t.is(data[0], endpoint) t.is(data[1], verkey) // Metadata - var metadata = 'Hi!' + const metadata = 'Hi!' await indy.setDidMetadata(wh, did, metadata) data = await indy.getDidMetadata(wh, did) t.is(data, metadata) @@ -57,8 +57,8 @@ test('did', async function (t) { t.deepEqual(await indy.listMyDidsWithMeta(wh), [data]) // Qualify DID - var method = 'peer' - var fullQualifiedDid = await indy.qualifyDid(wh, did, method) + const method = 'peer' + const fullQualifiedDid = await indy.qualifyDid(wh, did, method) t.is('did:' + method + ':' + did, fullQualifiedDid) await indy.closeWallet(wh) diff --git a/wrappers/nodejs/test/helpers/initTestPool.js b/wrappers/nodejs/test/helpers/initTestPool.js index 16a073d8c1..0df81ff6e1 100644 --- a/wrappers/nodejs/test/helpers/initTestPool.js +++ b/wrappers/nodejs/test/helpers/initTestPool.js @@ -1,14 +1,14 @@ -var indy = require('../../') -var makeTestPool = require('./makeTestPool') +const indy = require('../../') +const makeTestPool = require('./makeTestPool') module.exports = async function () { await indy.setProtocolVersion(2) - var pool = await makeTestPool() + const pool = await makeTestPool() await indy.createPoolLedgerConfig(pool.name, { - 'genesis_txn': pool.file + genesis_txn: pool.file }) - var poolH = await indy.openPoolLedger(pool.name) + const poolH = await indy.openPoolLedger(pool.name) return { name: pool.name, diff --git a/wrappers/nodejs/test/helpers/makeTestPool.js b/wrappers/nodejs/test/helpers/makeTestPool.js index c8824e6b72..dc013b72c7 100644 --- a/wrappers/nodejs/test/helpers/makeTestPool.js +++ b/wrappers/nodejs/test/helpers/makeTestPool.js @@ -1,23 +1,23 @@ -var fs = require('fs') -var path = require('path') -var tempy = require('tempy') +const fs = require('fs') +const path = require('path') +const tempy = require('tempy') module.exports = function () { - var poolIp = process.env.TEST_POOL_IP || '127.0.0.1' + const poolIp = process.env.TEST_POOL_IP || '127.0.0.1' - var genesisTxn = [ - { 'reqSignature': {}, 'txn': { 'data': { 'data': { 'alias': 'Node1', 'blskey': '4N8aUNHSgjQVgkpm8nhNEfDf6txHznoYREg9kirmJrkivgL4oSEimFF6nsQ6M41QvhM2Z33nves5vfSn9n1UwNFJBYtWVnHYMATn76vLuL3zU88KyeAYcHfsih3He6UHcXDxcaecHVz6jhCYz1P2UZn2bDVruL5wXpehgBfBaLKm3Ba', 'blskey_pop': 'RahHYiCvoNCtPTrVtP7nMC5eTYrsUA8WjXbdhNc8debh1agE9bGiJxWBXYNFbnJXoXhWFMvyqhqhRoq737YQemH5ik9oL7R4NTTCz2LEZhkgLJzB3QRQqJyBNyv7acbdHrAT8nQ9UkLbaVL9NBpnWXBTw4LEMePaSHEw66RzPNdAX1', 'client_ip': poolIp, 'client_port': 9702, 'node_ip': poolIp, 'node_port': 9701, 'services': ['VALIDATOR'] }, 'dest': 'Gw6pDLhcBcoQesN72qfotTgFa7cbuqZpkX3Xo6pLhPhv' }, 'metadata': { 'from': 'Th7MpTaRZVRYnPiabds81Y' }, 'type': '0' }, 'txnMetadata': { 'seqNo': 1, 'txnId': 'fea82e10e894419fe2bea7d96296a6d46f50f93f9eeda954ec461b2ed2950b62' }, 'ver': '1' }, - { 'reqSignature': {}, 'txn': { 'data': { 'data': { 'alias': 'Node2', 'blskey': '37rAPpXVoxzKhz7d9gkUe52XuXryuLXoM6P6LbWDB7LSbG62Lsb33sfG7zqS8TK1MXwuCHj1FKNzVpsnafmqLG1vXN88rt38mNFs9TENzm4QHdBzsvCuoBnPH7rpYYDo9DZNJePaDvRvqJKByCabubJz3XXKbEeshzpz4Ma5QYpJqjk', 'blskey_pop': 'Qr658mWZ2YC8JXGXwMDQTzuZCWF7NK9EwxphGmcBvCh6ybUuLxbG65nsX4JvD4SPNtkJ2w9ug1yLTj6fgmuDg41TgECXjLCij3RMsV8CwewBVgVN67wsA45DFWvqvLtu4rjNnE9JbdFTc1Z4WCPA3Xan44K1HoHAq9EVeaRYs8zoF5', 'client_ip': poolIp, 'client_port': 9704, 'node_ip': poolIp, 'node_port': 9703, 'services': ['VALIDATOR'] }, 'dest': '8ECVSk179mjsjKRLWiQtssMLgp6EPhWXtaYyStWPSGAb' }, 'metadata': { 'from': 'EbP4aYNeTHL6q385GuVpRV' }, 'type': '0' }, 'txnMetadata': { 'seqNo': 2, 'txnId': '1ac8aece2a18ced660fef8694b61aac3af08ba875ce3026a160acbc3a3af35fc' }, 'ver': '1' }, - { 'reqSignature': {}, 'txn': { 'data': { 'data': { 'alias': 'Node3', 'blskey': '3WFpdbg7C5cnLYZwFZevJqhubkFALBfCBBok15GdrKMUhUjGsk3jV6QKj6MZgEubF7oqCafxNdkm7eswgA4sdKTRc82tLGzZBd6vNqU8dupzup6uYUf32KTHTPQbuUM8Yk4QFXjEf2Usu2TJcNkdgpyeUSX42u5LqdDDpNSWUK5deC5', 'blskey_pop': 'QwDeb2CkNSx6r8QC8vGQK3GRv7Yndn84TGNijX8YXHPiagXajyfTjoR87rXUu4G4QLk2cF8NNyqWiYMus1623dELWwx57rLCFqGh7N4ZRbGDRP4fnVcaKg1BcUxQ866Ven4gw8y4N56S5HzxXNBZtLYmhGHvDtk6PFkFwCvxYrNYjh', 'client_ip': poolIp, 'client_port': 9706, 'node_ip': poolIp, 'node_port': 9705, 'services': ['VALIDATOR'] }, 'dest': 'DKVxG2fXXTU8yT5N7hGEbXB3dfdAnYv1JczDUHpmDxya' }, 'metadata': { 'from': '4cU41vWW82ArfxJxHkzXPG' }, 'type': '0' }, 'txnMetadata': { 'seqNo': 3, 'txnId': '7e9f355dffa78ed24668f0e0e369fd8c224076571c51e2ea8be5f26479edebe4' }, 'ver': '1' }, - { 'reqSignature': {}, 'txn': { 'data': { 'data': { 'alias': 'Node4', 'blskey': '2zN3bHM1m4rLz54MJHYSwvqzPchYp8jkHswveCLAEJVcX6Mm1wHQD1SkPYMzUDTZvWvhuE6VNAkK3KxVeEmsanSmvjVkReDeBEMxeDaayjcZjFGPydyey1qxBHmTvAnBKoPydvuTAqx5f7YNNRAdeLmUi99gERUU7TD8KfAa6MpQ9bw', 'blskey_pop': 'RPLagxaR5xdimFzwmzYnz4ZhWtYQEj8iR5ZU53T2gitPCyCHQneUn2Huc4oeLd2B2HzkGnjAff4hWTJT6C7qHYB1Mv2wU5iHHGFWkhnTX9WsEAbunJCV2qcaXScKj4tTfvdDKfLiVuU2av6hbsMztirRze7LvYBkRHV3tGwyCptsrP', 'client_ip': poolIp, 'client_port': 9708, 'node_ip': poolIp, 'node_port': 9707, 'services': ['VALIDATOR'] }, 'dest': '4PS3EDQ3dW1tci1Bp6543CfuuebjFrg36kLAUcskGfaA' }, 'metadata': { 'from': 'TWwCRQRZ2ZHMJFn9TzLp7W' }, 'type': '0' }, 'txnMetadata': { 'seqNo': 4, 'txnId': 'aa5e817d7cc626170eca175822029339a444eb0ee8f0bd20d3b0b76e566fb008' }, 'ver': '1' } + const genesisTxn = [ + { reqSignature: {}, txn: { data: { data: { alias: 'Node1', blskey: '4N8aUNHSgjQVgkpm8nhNEfDf6txHznoYREg9kirmJrkivgL4oSEimFF6nsQ6M41QvhM2Z33nves5vfSn9n1UwNFJBYtWVnHYMATn76vLuL3zU88KyeAYcHfsih3He6UHcXDxcaecHVz6jhCYz1P2UZn2bDVruL5wXpehgBfBaLKm3Ba', blskey_pop: 'RahHYiCvoNCtPTrVtP7nMC5eTYrsUA8WjXbdhNc8debh1agE9bGiJxWBXYNFbnJXoXhWFMvyqhqhRoq737YQemH5ik9oL7R4NTTCz2LEZhkgLJzB3QRQqJyBNyv7acbdHrAT8nQ9UkLbaVL9NBpnWXBTw4LEMePaSHEw66RzPNdAX1', client_ip: poolIp, client_port: 9702, node_ip: poolIp, node_port: 9701, services: ['VALIDATOR'] }, dest: 'Gw6pDLhcBcoQesN72qfotTgFa7cbuqZpkX3Xo6pLhPhv' }, metadata: { from: 'Th7MpTaRZVRYnPiabds81Y' }, type: '0' }, txnMetadata: { seqNo: 1, txnId: 'fea82e10e894419fe2bea7d96296a6d46f50f93f9eeda954ec461b2ed2950b62' }, ver: '1' }, + { reqSignature: {}, txn: { data: { data: { alias: 'Node2', blskey: '37rAPpXVoxzKhz7d9gkUe52XuXryuLXoM6P6LbWDB7LSbG62Lsb33sfG7zqS8TK1MXwuCHj1FKNzVpsnafmqLG1vXN88rt38mNFs9TENzm4QHdBzsvCuoBnPH7rpYYDo9DZNJePaDvRvqJKByCabubJz3XXKbEeshzpz4Ma5QYpJqjk', blskey_pop: 'Qr658mWZ2YC8JXGXwMDQTzuZCWF7NK9EwxphGmcBvCh6ybUuLxbG65nsX4JvD4SPNtkJ2w9ug1yLTj6fgmuDg41TgECXjLCij3RMsV8CwewBVgVN67wsA45DFWvqvLtu4rjNnE9JbdFTc1Z4WCPA3Xan44K1HoHAq9EVeaRYs8zoF5', client_ip: poolIp, client_port: 9704, node_ip: poolIp, node_port: 9703, services: ['VALIDATOR'] }, dest: '8ECVSk179mjsjKRLWiQtssMLgp6EPhWXtaYyStWPSGAb' }, metadata: { from: 'EbP4aYNeTHL6q385GuVpRV' }, type: '0' }, txnMetadata: { seqNo: 2, txnId: '1ac8aece2a18ced660fef8694b61aac3af08ba875ce3026a160acbc3a3af35fc' }, ver: '1' }, + { reqSignature: {}, txn: { data: { data: { alias: 'Node3', blskey: '3WFpdbg7C5cnLYZwFZevJqhubkFALBfCBBok15GdrKMUhUjGsk3jV6QKj6MZgEubF7oqCafxNdkm7eswgA4sdKTRc82tLGzZBd6vNqU8dupzup6uYUf32KTHTPQbuUM8Yk4QFXjEf2Usu2TJcNkdgpyeUSX42u5LqdDDpNSWUK5deC5', blskey_pop: 'QwDeb2CkNSx6r8QC8vGQK3GRv7Yndn84TGNijX8YXHPiagXajyfTjoR87rXUu4G4QLk2cF8NNyqWiYMus1623dELWwx57rLCFqGh7N4ZRbGDRP4fnVcaKg1BcUxQ866Ven4gw8y4N56S5HzxXNBZtLYmhGHvDtk6PFkFwCvxYrNYjh', client_ip: poolIp, client_port: 9706, node_ip: poolIp, node_port: 9705, services: ['VALIDATOR'] }, dest: 'DKVxG2fXXTU8yT5N7hGEbXB3dfdAnYv1JczDUHpmDxya' }, metadata: { from: '4cU41vWW82ArfxJxHkzXPG' }, type: '0' }, txnMetadata: { seqNo: 3, txnId: '7e9f355dffa78ed24668f0e0e369fd8c224076571c51e2ea8be5f26479edebe4' }, ver: '1' }, + { reqSignature: {}, txn: { data: { data: { alias: 'Node4', blskey: '2zN3bHM1m4rLz54MJHYSwvqzPchYp8jkHswveCLAEJVcX6Mm1wHQD1SkPYMzUDTZvWvhuE6VNAkK3KxVeEmsanSmvjVkReDeBEMxeDaayjcZjFGPydyey1qxBHmTvAnBKoPydvuTAqx5f7YNNRAdeLmUi99gERUU7TD8KfAa6MpQ9bw', blskey_pop: 'RPLagxaR5xdimFzwmzYnz4ZhWtYQEj8iR5ZU53T2gitPCyCHQneUn2Huc4oeLd2B2HzkGnjAff4hWTJT6C7qHYB1Mv2wU5iHHGFWkhnTX9WsEAbunJCV2qcaXScKj4tTfvdDKfLiVuU2av6hbsMztirRze7LvYBkRHV3tGwyCptsrP', client_ip: poolIp, client_port: 9708, node_ip: poolIp, node_port: 9707, services: ['VALIDATOR'] }, dest: '4PS3EDQ3dW1tci1Bp6543CfuuebjFrg36kLAUcskGfaA' }, metadata: { from: 'TWwCRQRZ2ZHMJFn9TzLp7W' }, type: '0' }, txnMetadata: { seqNo: 4, txnId: 'aa5e817d7cc626170eca175822029339a444eb0ee8f0bd20d3b0b76e566fb008' }, ver: '1' } ] - var txnData = genesisTxn.map(function (line) { + const txnData = genesisTxn.map(function (line) { return JSON.stringify(line) }).join('\n') return new Promise(function (resolve, reject) { - var file = tempy.file() + const file = tempy.file() fs.writeFile(file, txnData, 'utf8', function (err) { if (err) return reject(err) diff --git a/wrappers/nodejs/test/index.js b/wrappers/nodejs/test/index.js index 0168837191..fa4e316ce2 100644 --- a/wrappers/nodejs/test/index.js +++ b/wrappers/nodejs/test/index.js @@ -1,9 +1,9 @@ -var test = require('ava') -var indy = require('../') +const test = require('ava') +const indy = require('../') -var did = 'VsKV7grR1BUE29mG2Fm2kX' -var verkey = 'GjZWsBLgZCR18aL468JAT7w9CZRiBnpxUPPgyQxh4voa' -var abbrVerkey = '~HYwqs2vrTc8Tn4uBV7NBTe' +const did = 'VsKV7grR1BUE29mG2Fm2kX' +const verkey = 'GjZWsBLgZCR18aL468JAT7w9CZRiBnpxUPPgyQxh4voa' +const abbrVerkey = '~HYwqs2vrTc8Tn4uBV7NBTe' test.before('test getCurrentError before any errors', function (t) { t.is(indy.capi.getCurrentError(), null) @@ -12,7 +12,7 @@ test.before('test getCurrentError before any errors', function (t) { test('wrapper essentials', async function (t) { t.is(await indy.abbreviateVerkey(did, verkey), abbrVerkey) - var err = await t.throwsAsync(indy.abbreviateVerkey()) + let err = await t.throwsAsync(indy.abbreviateVerkey()) t.is(err.message, 'CommonInvalidParam3') t.is(err.indyCode, 102) t.is(err.indyName, 'CommonInvalidParam3') @@ -24,17 +24,17 @@ test('wrapper essentials', async function (t) { err = t.throws(function () { indy.abbreviateVerkey(1, verkey) - }, Error) + }, { instanceOf: Error }) t.is(err.message, 'abbreviateVerkey expects String or null for did') err = t.throws(function () { indy.abbreviateVerkey(did, [1, 2, 3]) - }, Error) + }, { instanceOf: Error }) t.is(err.message, 'abbreviateVerkey expects String or null for fullVerkey') err = await t.throwsAsync(indy.abbreviateVerkey(null, verkey)) t.is(err.indyName, 'CommonInvalidParam3') - err = await t.throwsAsync(indy.abbreviateVerkey(void 0, verkey)) + err = await t.throwsAsync(indy.abbreviateVerkey(undefined, verkey)) t.is(err.indyName, 'CommonInvalidParam3') err = await t.throwsAsync(indy.abbreviateVerkey(did, null)) diff --git a/wrappers/nodejs/test/ledger.js b/wrappers/nodejs/test/ledger.js index 85e9b2a43a..1676c4b235 100644 --- a/wrappers/nodejs/test/ledger.js +++ b/wrappers/nodejs/test/ledger.js @@ -1,8 +1,8 @@ -var test = require('ava') -var indy = require('../') -var cuid = require('cuid') -var initTestPool = require('./helpers/initTestPool') -var tempy = require('tempy') +const test = require('ava') +const indy = require('../') +const cuid = require('cuid') +const initTestPool = require('./helpers/initTestPool') +const tempy = require('tempy') function sleep (ms) { return new Promise(function (resolve) { @@ -12,7 +12,7 @@ function sleep (ms) { async function waitUntilApplied (ph, req, cond) { for (let i = 0; i < 3; i++) { - let res = await indy.submitRequest(ph, req) + const res = await indy.submitRequest(ph, req) if (cond(res)) { return res @@ -23,32 +23,32 @@ async function waitUntilApplied (ph, req, cond) { } test('ledger', async function (t) { - var pool = await initTestPool() - var walletConfig = { 'id': 'wallet-' + cuid() } - var walletCredentials = { 'key': 'key' } + const pool = await initTestPool() + const walletConfig = { id: 'wallet-' + cuid() } + const walletCredentials = { key: 'key' } await indy.createWallet(walletConfig, walletCredentials) - var wh = await indy.openWallet(walletConfig, walletCredentials) - var [trusteeDid] = await indy.createAndStoreMyDid(wh, { seed: '000000000000000000000000Trustee1' }) - var [myDid, myVerkey] = await indy.createAndStoreMyDid(wh, { }) - var schemaName = 'schema-' + cuid() - var [schemaId, schema] = await indy.issuerCreateSchema(myDid, schemaName, '1.0', ['name', 'age']) + const wh = await indy.openWallet(walletConfig, walletCredentials) + const [trusteeDid] = await indy.createAndStoreMyDid(wh, { seed: '000000000000000000000000Trustee1' }) + const [myDid, myVerkey] = await indy.createAndStoreMyDid(wh, { }) + const schemaName = 'schema-' + cuid() + let [schemaId, schema] = await indy.issuerCreateSchema(myDid, schemaName, '1.0', ['name', 'age']) // Nym - var req = await indy.buildNymRequest(trusteeDid, myDid, myVerkey, null, 'TRUSTEE') - var res = await indy.signAndSubmitRequest(pool.handle, wh, trusteeDid, req) + let req = await indy.buildNymRequest(trusteeDid, myDid, myVerkey, null, 'TRUSTEE') + let res = await indy.signAndSubmitRequest(pool.handle, wh, trusteeDid, req) t.is(res.result.txn.data.verkey, myVerkey) - var resMetadata = await indy.getResponseMetadata(res) - t.true(resMetadata.hasOwnProperty('seqNo')) - t.true(resMetadata.hasOwnProperty('txnTime')) - t.false(resMetadata.hasOwnProperty('lastTxnTime')) - t.false(resMetadata.hasOwnProperty('lastSeqNo')) + const resMetadata = await indy.getResponseMetadata(res) + t.true(Object.prototype.hasOwnProperty.call(resMetadata, 'seqNo')) + t.true(Object.prototype.hasOwnProperty.call(resMetadata, 'txnTime')) + t.false(Object.prototype.hasOwnProperty.call(resMetadata, 'lastTxnTime')) + t.false(Object.prototype.hasOwnProperty.call(resMetadata, 'lastSeqNo')) req = await indy.buildGetNymRequest(trusteeDid, myDid) - res = await waitUntilApplied(pool.handle, req, res => res['result']['seqNo'] != null) - var data = await indy.parseGetNymResponse(res) - t.is(myDid, data['did']) - t.is(myVerkey, data['verkey']) + res = await waitUntilApplied(pool.handle, req, res => res.result.seqNo != null) + let data = await indy.parseGetNymResponse(res) + t.is(myDid, data.did) + t.is(myVerkey, data.verkey) // Schema req = await indy.buildSchemaRequest(myDid, schema) @@ -56,12 +56,12 @@ test('ledger', async function (t) { res = await indy.submitRequest(pool.handle, req) req = await indy.buildGetSchemaRequest(myDid, schemaId) - res = await waitUntilApplied(pool.handle, req, res => res['result']['seqNo'] != null) + res = await waitUntilApplied(pool.handle, req, res => res.result.seqNo != null) data = await indy.parseGetSchemaResponse(res) t.is(data[0], schemaId) t.is(data[1].name, schema.name) req = await indy.buildGetTxnRequest(myDid, null, data[1].seqNo) - res = await waitUntilApplied(pool.handle, req, res => res['result']['data']['txnMetadata']['seqNo'] != null) + res = await waitUntilApplied(pool.handle, req, res => res.result.data.txnMetadata.seqNo != null) t.is(res.result.data.txn.data.data.name, schema.name) schema = data[1] @@ -83,7 +83,7 @@ test('ledger', async function (t) { res = await indy.signAndSubmitRequest(pool.handle, wh, myDid, req) req = await indy.buildGetAttribRequest(myDid, myDid, 'endpoint', null, null) - res = await waitUntilApplied(pool.handle, req, data => data['result']['data'] != null) + res = await waitUntilApplied(pool.handle, req, data => data.result.data != null) t.deepEqual(JSON.parse(res.result.data), { endpoint: { ha: '127.0.0.1:5555' } }) // Pool @@ -101,29 +101,29 @@ test('ledger', async function (t) { t.is(req.operation.dest, trusteeDid) // Cred Def - var [credDefId, credDef] = await indy.issuerCreateAndStoreCredentialDef(wh, myDid, schema, 'TAG', 'CL', { support_revocation: true }) + const [credDefId, credDef] = await indy.issuerCreateAndStoreCredentialDef(wh, myDid, schema, 'TAG', 'CL', { support_revocation: true }) req = await indy.buildCredDefRequest(myDid, credDef) res = await indy.signAndSubmitRequest(pool.handle, wh, myDid, req) req = await indy.buildGetCredDefRequest(myDid, credDefId) - res = await waitUntilApplied(pool.handle, req, res => res['result']['seqNo'] != null) + res = await waitUntilApplied(pool.handle, req, res => res.result.seqNo != null) res = await indy.parseGetCredDefResponse(res) t.is(res[0], credDefId) t.is(res[1].id, credDef.id) // Revoc Reg Def - var writerH = await indy.openBlobStorageWriter('default', { - 'base_dir': tempy.directory(), - 'uri_pattern': '' + const writerH = await indy.openBlobStorageWriter('default', { + base_dir: tempy.directory(), + uri_pattern: '' }) - var [revRegDefId, revRegDef, revRegEntry] = await indy.issuerCreateAndStoreRevocReg(wh, myDid, null, 'tag1', credDefId, { max_cred_num: 5 }, writerH) + const [revRegDefId, revRegDef, revRegEntry] = await indy.issuerCreateAndStoreRevocReg(wh, myDid, null, 'tag1', credDefId, { max_cred_num: 5 }, writerH) req = await indy.buildRevocRegDefRequest(myDid, revRegDef) res = await indy.signAndSubmitRequest(pool.handle, wh, myDid, req) t.is(res.result.txn.data.id, revRegDefId) req = await indy.buildGetRevocRegDefRequest(myDid, revRegDefId) - res = await waitUntilApplied(pool.handle, req, res => res['result']['seqNo'] != null) + res = await waitUntilApplied(pool.handle, req, res => res.result.seqNo != null) res = await indy.parseGetRevocRegDefResponse(res) t.is(res[0], revRegDefId) t.is(res[1].id, revRegDef.id) @@ -132,9 +132,9 @@ test('ledger', async function (t) { req = await indy.buildRevocRegEntryRequest(myDid, revRegDefId, 'CL_ACCUM', revRegEntry) res = await indy.signAndSubmitRequest(pool.handle, wh, myDid, req) - var nowSeconds = Math.floor(Date.now() / 1000) + const nowSeconds = Math.floor(Date.now() / 1000) req = await indy.buildGetRevocRegRequest(myDid, revRegDefId, nowSeconds + 100) - res = await waitUntilApplied(pool.handle, req, res => res['result']['seqNo'] != null) + res = await waitUntilApplied(pool.handle, req, res => res.result.seqNo != null) res = await indy.parseGetRevocRegResponse(res) t.is(res[0], revRegDefId) t.is(typeof res[1], 'object') @@ -142,7 +142,7 @@ test('ledger', async function (t) { // RevocRegDelta req = await indy.buildGetRevocRegDeltaRequest(myDid, revRegDefId, nowSeconds, nowSeconds + 100) - res = await waitUntilApplied(pool.handle, req, res => res['result']['seqNo'] != null) + res = await waitUntilApplied(pool.handle, req, res => res.result.seqNo != null) res = await indy.parseGetRevocRegDeltaResponse(res) t.is(res[0], revRegDefId) t.is(typeof res[1], 'object') @@ -156,14 +156,14 @@ test('ledger', async function (t) { // Auth Rule req = await indy.buildGetAuthRuleRequest(trusteeDid, 'NYM', 'ADD', 'role', null, '101') res = await indy.submitRequest(pool.handle, req) - var defaultConstraint = res['result']['data'][0]['constraint'] - - var constraint = { - 'sig_count': 1, - 'metadata': {}, - 'role': '0', - 'constraint_id': 'ROLE', - 'need_to_be_owner': false + const defaultConstraint = res.result.data[0].constraint + + const constraint = { + sig_count: 1, + metadata: {}, + role: '0', + constraint_id: 'ROLE', + need_to_be_owner: false } req = await indy.buildAuthRuleRequest(trusteeDid, 'NYM', 'ADD', 'role', null, '101', constraint) res = await indy.signAndSubmitRequest(pool.handle, wh, trusteeDid, req) @@ -173,49 +173,49 @@ test('ledger', async function (t) { req = await indy.buildGetAuthRuleRequest(trusteeDid, 'NYM', 'ADD', 'role', null, '101') res = await indy.submitRequest(pool.handle, req) - t.deepEqual(res['result']['data'][0]['constraint'], constraint) - - var expectedAuthRule = { - 'auth_type': '1', - 'auth_action': 'ADD', - 'field': 'role', - 'new_value': '101', - 'constraint': constraint + t.deepEqual(res.result.data[0].constraint, constraint) + + const expectedAuthRule = { + auth_type: '1', + auth_action: 'ADD', + field: 'role', + new_value: '101', + constraint: constraint } - var authRulesData = [expectedAuthRule] + const authRulesData = [expectedAuthRule] req = await indy.buildAuthRulesRequest(trusteeDid, authRulesData) res = await indy.signAndSubmitRequest(pool.handle, wh, trusteeDid, req) t.is(res.op, 'REPLY') // author agreement req = await indy.buildTxnAuthorAgreementRequest(trusteeDid, 'indy agreement', '1.0.0', 12345, 54321) - t.deepEqual(req['operation'], { 'type': '4', 'text': 'indy agreement', 'version': '1.0.0', 'ratification_ts': 12345, 'retirement_ts': 54321 }) + t.deepEqual(req.operation, { type: '4', text: 'indy agreement', version: '1.0.0', ratification_ts: 12345, retirement_ts: 54321 }) - req = await indy.buildGetTxnAuthorAgreementRequest(null, { 'version': '1.0.0' }) - t.deepEqual(req['operation'], { 'type': '6', 'version': '1.0.0' }) + req = await indy.buildGetTxnAuthorAgreementRequest(null, { version: '1.0.0' }) + t.deepEqual(req.operation, { type: '6', version: '1.0.0' }) req = await indy.buildDisableAllTxnAuthorAgreementsRequest(trusteeDid) - t.deepEqual(req['operation'], { 'type': '8' }) + t.deepEqual(req.operation, { type: '8' }) // acceptance mechanism - var aml = { 'acceptance mechanism label 1': 'some acceptance mechanism description 1' } + const aml = { 'acceptance mechanism label 1': 'some acceptance mechanism description 1' } req = await indy.buildAcceptanceMechanismsRequest(trusteeDid, aml, '1.0.0', null) - t.deepEqual(req['operation'], { 'type': '5', 'aml': aml, 'version': '1.0.0' }) + t.deepEqual(req.operation, { type: '5', aml: aml, version: '1.0.0' }) req = await indy.buildGetAcceptanceMechanismsRequest(null, 123379200, null) - t.deepEqual(req['operation'], { 'type': '7', 'timestamp': 123379200 }) + t.deepEqual(req.operation, { type: '7', timestamp: 123379200 }) // ledgers freeze - var ledgersIds = [0, 3, 76, 874] + let ledgersIds = [0, 3, 76, 874] req = await indy.buildLedgersFreezeRequest(trusteeDid, ledgersIds) - t.deepEqual(req['operation'], { 'type': '9', 'ledgers_ids': ledgersIds }) + t.deepEqual(req.operation, { type: '9', ledgers_ids: ledgersIds }) ledgersIds = [] req = await indy.buildLedgersFreezeRequest(trusteeDid, ledgersIds) - t.deepEqual(req['operation'], { 'type': '9', 'ledgers_ids': ledgersIds }) + t.deepEqual(req.operation, { type: '9', ledgers_ids: ledgersIds }) - var err = await t.throwsAsync(indy.buildLedgersFreezeRequest(trusteeDid, ['0', '3', '76', '874'])) + let err = await t.throwsAsync(indy.buildLedgersFreezeRequest(trusteeDid, ['0', '3', '76', '874'])) t.is(err.indyName, 'CommonInvalidStructure') err = await t.throwsAsync(indy.buildLedgersFreezeRequest(trusteeDid, '[0, 3, 76, 874]')) @@ -223,16 +223,16 @@ test('ledger', async function (t) { // frozen ledgers req = await indy.buildGetFrozenLedgersRequest(trusteeDid) - t.deepEqual(req['operation'], { 'type': '10' }) + t.deepEqual(req.operation, { type: '10' }) // author agreement acceptance data req = await indy.appendTxnAuthorAgreementAcceptanceToRequest(req, 'indy agreement', '1.0.0', null, 'acceptance mechanism label 1', 123379200) - var expectedMeta = { - 'mechanism': 'acceptance mechanism label 1', - 'taaDigest': '7213b9aabf8677edf6b17d20a9fbfaddb059ea4cb122d163bdf658ea67196120', - 'time': 123379200 + const expectedMeta = { + mechanism: 'acceptance mechanism label 1', + taaDigest: '7213b9aabf8677edf6b17d20a9fbfaddb059ea4cb122d163bdf658ea67196120', + time: 123379200 } - t.deepEqual(req['taaAcceptance'], expectedMeta) + t.deepEqual(req.taaAcceptance, expectedMeta) // set back req = await indy.buildAuthRuleRequest(trusteeDid, 'NYM', 'ADD', 'role', null, '101', defaultConstraint) @@ -242,7 +242,7 @@ test('ledger', async function (t) { // endorser req = await indy.buildSchemaRequest(myDid, schema) req = await indy.appendRequestEndorser(req, trusteeDid) - t.is(req['endorser'], trusteeDid) + t.is(req.endorser, trusteeDid) await indy.closeWallet(wh) await indy.deleteWallet(walletConfig, walletCredentials) diff --git a/wrappers/nodejs/test/logger.js b/wrappers/nodejs/test/logger.js index b304b2872a..e5bf4bac67 100644 --- a/wrappers/nodejs/test/logger.js +++ b/wrappers/nodejs/test/logger.js @@ -1,16 +1,16 @@ // NOTE: there are 2 test files for logger so ava can run them in separate nodejs processes // why? setLogger and setDefaultLogger cannot be both called in the same process -var test = require('ava') -var indy = require('../') -var IndyError = require('../src/IndyError') +const test = require('ava') +const indy = require('../') +const IndyError = require('../src/IndyError') test('setDefaultLogger', function (t) { t.notThrows(function () { indy.setDefaultLogger('trace') }) - var err = t.throws(function () { + const err = t.throws(function () { indy.setDefaultLogger('foo') - }, IndyError) + }, { instanceOf: IndyError }) t.is(err.indyName, 'CommonInvalidState') }) diff --git a/wrappers/nodejs/test/logger2.js b/wrappers/nodejs/test/logger2.js index 7f3ec93298..15636d3ff5 100644 --- a/wrappers/nodejs/test/logger2.js +++ b/wrappers/nodejs/test/logger2.js @@ -1,11 +1,11 @@ // NOTE: there are 2 test files for logger so ava can run them in separate nodejs processes // why? setLogger and setDefaultLogger cannot be both called in the same process -var test = require('ava') -var indy = require('../') -var IndyError = require('../src/IndyError') +const test = require('ava') +const indy = require('../') +const IndyError = require('../src/IndyError') test('setLogger', async function (t) { - var nEntries = 0 + let nEntries = 0 function logFn (level, target, message, modulePath, file, line) { nEntries++ t.is(typeof level, 'number') @@ -23,8 +23,8 @@ test('setLogger', async function (t) { await indy.abbreviateVerkey('VsKV7grR1BUE29mG2Fm2kX', 'GjZWsBLgZCR18aL468JAT7w9CZRiBnpxUPPgyQxh4voa') t.true(nEntries > 0) - var err = t.throws(function () { + const err = t.throws(function () { indy.setLogger(function () {}) - }, IndyError) + }, { instanceOf: IndyError }) t.is(err.indyName, 'CommonInvalidState') }) diff --git a/wrappers/nodejs/test/mod.js b/wrappers/nodejs/test/mod.js index 2da1f0a746..4764610d29 100644 --- a/wrappers/nodejs/test/mod.js +++ b/wrappers/nodejs/test/mod.js @@ -1,5 +1,5 @@ -var test = require('ava') -var indy = require('../') +const test = require('ava') +const indy = require('../') test('setRuntimeConfig', async function (t) { t.notThrows(function () { diff --git a/wrappers/nodejs/test/nonsecrets.js b/wrappers/nodejs/test/nonsecrets.js index a35e2f7c72..8790211778 100644 --- a/wrappers/nodejs/test/nonsecrets.js +++ b/wrappers/nodejs/test/nonsecrets.js @@ -1,12 +1,12 @@ -var test = require('ava') -var indy = require('../') -var cuid = require('cuid') +const test = require('ava') +const indy = require('../') +const cuid = require('cuid') test('nonsecrets', async function (t) { - var walletConfig = { 'id': 'wallet-' + cuid() } - var walletCredentials = { 'key': 'key' } + const walletConfig = { id: 'wallet-' + cuid() } + const walletCredentials = { key: 'key' } await indy.createWallet(walletConfig, walletCredentials) - var wh = await indy.openWallet(walletConfig, walletCredentials) + const wh = await indy.openWallet(walletConfig, walletCredentials) await indy.addWalletRecord(wh, 'contact', '1', 'john', JSON.stringify({ '~score': 'aaa' @@ -38,21 +38,21 @@ test('nonsecrets', async function (t) { }) t.is(record2.type, 'contact') - const query = { '~score': { '$gte': 'bbb' } } - let searchHandle = await indy.openWalletSearch(wh, 'contact', JSON.stringify(query), JSON.stringify({ + const query = { '~score': { $gte: 'bbb' } } + const searchHandle = await indy.openWalletSearch(wh, 'contact', JSON.stringify(query), JSON.stringify({ retrieveRecords: true, retrieveTotalCount: true, retrieveType: true, retrieveValue: true, retrieveTags: true })) - let searchResult = await indy.fetchWalletSearchNextRecords(wh, searchHandle, 10) + const searchResult = await indy.fetchWalletSearchNextRecords(wh, searchHandle, 10) t.is(searchResult.totalCount, 2) - let jessica = searchResult.records.find(r => r.value === 'jessica') + const jessica = searchResult.records.find(r => r.value === 'jessica') t.is(jessica.id, '2') t.is(jessica.type, 'contact') t.is(jessica.tags['~score'], 'ccc') - let jack = searchResult.records.find(r => r.value === 'george') + const jack = searchResult.records.find(r => r.value === 'george') t.is(jack.id, '3') t.is(jack.type, 'contact') t.is(jack.tags['~score'], 'fff') diff --git a/wrappers/nodejs/test/pairwise.js b/wrappers/nodejs/test/pairwise.js index 9a1719c545..02dd50971b 100644 --- a/wrappers/nodejs/test/pairwise.js +++ b/wrappers/nodejs/test/pairwise.js @@ -1,17 +1,17 @@ -var test = require('ava') -var indy = require('../') -var cuid = require('cuid') -var initTestPool = require('./helpers/initTestPool') +const test = require('ava') +const indy = require('../') +const cuid = require('cuid') +const initTestPool = require('./helpers/initTestPool') test('pairwise', async function (t) { - var pool = await initTestPool() - var walletConfig = { 'id': 'wallet-' + cuid() } - var walletCredentials = { 'key': 'key' } + const pool = await initTestPool() + const walletConfig = { id: 'wallet-' + cuid() } + const walletCredentials = { key: 'key' } await indy.createWallet(walletConfig, walletCredentials) - var wh = await indy.openWallet(walletConfig, walletCredentials) + const wh = await indy.openWallet(walletConfig, walletCredentials) - var [theirDid, theirVerkey] = await indy.createAndStoreMyDid(wh, {}) - var [myDid] = await indy.createAndStoreMyDid(wh, {}) + const [theirDid, theirVerkey] = await indy.createAndStoreMyDid(wh, {}) + const [myDid] = await indy.createAndStoreMyDid(wh, {}) await indy.storeTheirDid(wh, { did: theirDid, verkey: theirVerkey }) t.deepEqual(await indy.listPairwise(wh), []) diff --git a/wrappers/nodejs/test/payments.js b/wrappers/nodejs/test/payments.js index 2f32d28d31..220510d563 100644 --- a/wrappers/nodejs/test/payments.js +++ b/wrappers/nodejs/test/payments.js @@ -1,26 +1,26 @@ -var test = require('ava') -var indy = require('../') -var cuid = require('cuid') -var initTestPool = require('./helpers/initTestPool') +const test = require('ava') +const indy = require('../') +const cuid = require('cuid') +const initTestPool = require('./helpers/initTestPool') test('payments', async function (t) { - var pool = await initTestPool() + const pool = await initTestPool() - var walletConfig = { 'id': 'wallet-' + cuid() } - var walletCredentials = { 'key': 'key' } + const walletConfig = { id: 'wallet-' + cuid() } + const walletCredentials = { key: 'key' } await indy.createWallet(walletConfig, walletCredentials) - var wh = await indy.openWallet(walletConfig, walletCredentials) + const wh = await indy.openWallet(walletConfig, walletCredentials) - var [trusteeDid] = await indy.createAndStoreMyDid(wh, { seed: '000000000000000000000000Trustee1' }) + const [trusteeDid] = await indy.createAndStoreMyDid(wh, { seed: '000000000000000000000000Trustee1' }) - var paymentMethod = 'null' - var paymentAddress = 'pay:null:test' - var inputs = ['pay:null:1'] - var outputs = [{ 'recipient': 'pay:null:1', 'amount': 1 }] - var from = 1 + const paymentMethod = 'null' + const paymentAddress = 'pay:null:test' + const inputs = ['pay:null:1'] + const outputs = [{ recipient: 'pay:null:1', amount: 1 }] + const from = 1 - var err = await t.throwsAsync(indy.createPaymentAddress(wh, paymentMethod, {})) + let err = await t.throwsAsync(indy.createPaymentAddress(wh, paymentMethod, {})) t.is(err.indyName, 'PaymentUnknownMethodError') t.deepEqual(await indy.listPaymentAddresses(wh), []) @@ -46,19 +46,19 @@ test('payments', async function (t) { err = await t.throwsAsync(indy.parsePaymentResponse(paymentMethod, {})) t.is(err.indyName, 'PaymentUnknownMethodError') - var extra = await indy.preparePaymentExtraWithAcceptanceData(null, 'indy agreement', '1.0.0', null, 'acceptance mechanism label 1', 123379200) - var expectedExtra = { - 'mechanism': 'acceptance mechanism label 1', - 'taaDigest': '7213b9aabf8677edf6b17d20a9fbfaddb059ea4cb122d163bdf658ea67196120', - 'time': 123379200 + const extra = await indy.preparePaymentExtraWithAcceptanceData(null, 'indy agreement', '1.0.0', null, 'acceptance mechanism label 1', 123379200) + const expectedExtra = { + mechanism: 'acceptance mechanism label 1', + taaDigest: '7213b9aabf8677edf6b17d20a9fbfaddb059ea4cb122d163bdf658ea67196120', + time: 123379200 } - t.deepEqual(extra['taaAcceptance'], expectedExtra) + t.deepEqual(extra.taaAcceptance, expectedExtra) err = await t.throwsAsync(indy.buildMintReq(wh, trusteeDid, outputs, null)) t.is(err.indyName, 'PaymentUnknownMethodError') - var fees = { 'txnType1': 1, 'txnType2': 2 } + let fees = { txnType1: 1, txnType2: 2 } err = await t.throwsAsync(indy.buildSetTxnFeesReq(wh, trusteeDid, paymentMethod, fees)) t.is(err.indyName, 'PaymentUnknownMethodError') @@ -69,7 +69,7 @@ test('payments', async function (t) { err = await t.throwsAsync(indy.parseGetTxnFeesResponse(paymentMethod, {})) t.is(err.indyName, 'PaymentUnknownMethodError') - var receipt = 'pay:null:0_PqVjwJC42sxCTJp' + const receipt = 'pay:null:0_PqVjwJC42sxCTJp' err = await t.throwsAsync(indy.buildVerifyPaymentReq(wh, trusteeDid, receipt)) t.is(err.indyName, 'PaymentUnknownMethodError') @@ -77,25 +77,25 @@ test('payments', async function (t) { err = await t.throwsAsync(indy.parseVerifyPaymentResponse(paymentMethod, {})) t.is(err.indyName, 'PaymentUnknownMethodError') - var message = Buffer.from('123456789', 'utf8') + const message = Buffer.from('123456789', 'utf8') err = await t.throwsAsync(indy.signWithAddress(wh, paymentAddress, message)) t.is(err.indyName, 'PaymentUnknownMethodError') - var signature = Buffer.from('987654321', 'utf8') + const signature = Buffer.from('987654321', 'utf8') err = await t.throwsAsync(indy.verifyWithAddress(paymentAddress, message, signature)) t.is(err.indyName, 'PaymentUnknownMethodError') - var getAuthRuleResp = { 'result': { 'data': [ { 'new_value': '0', 'constraint': { 'need_to_be_owner': false, 'sig_count': 1, 'metadata': { 'fees': '1' }, 'role': '0', 'constraint_id': 'ROLE' }, 'field': 'role', 'auth_type': '1', 'auth_action': 'ADD' } ], 'identifier': 'LibindyDid111111111111', 'auth_action': 'ADD', 'new_value': '0', 'reqId': 15616, 'auth_type': '1', 'type': '121', 'field': 'role' }, 'op': 'REPLY' } - var requesterInfo = { 'role': '0', 'need_to_be_owner': false, 'sig_count': 1 } - fees = { '1': 100 } + const getAuthRuleResp = { result: { data: [{ new_value: '0', constraint: { need_to_be_owner: false, sig_count: 1, metadata: { fees: '1' }, role: '0', constraint_id: 'ROLE' }, field: 'role', auth_type: '1', auth_action: 'ADD' }], identifier: 'LibindyDid111111111111', auth_action: 'ADD', new_value: '0', reqId: 15616, auth_type: '1', type: '121', field: 'role' }, op: 'REPLY' } + const requesterInfo = { role: '0', need_to_be_owner: false, sig_count: 1 } + fees = { 1: 100 } - var requestInfo = await indy.getRequestInfo(getAuthRuleResp, requesterInfo, fees) - var expectedRequestInfo = { - 'price': 100, - 'requirements': [{ - 'role': '0', - 'need_to_be_owner': false, - 'sig_count': 1 + const requestInfo = await indy.getRequestInfo(getAuthRuleResp, requesterInfo, fees) + const expectedRequestInfo = { + price: 100, + requirements: [{ + role: '0', + need_to_be_owner: false, + sig_count: 1 }] } t.deepEqual(expectedRequestInfo, requestInfo) diff --git a/wrappers/nodejs/test/pool.js b/wrappers/nodejs/test/pool.js index 433293c071..fac563eafe 100644 --- a/wrappers/nodejs/test/pool.js +++ b/wrappers/nodejs/test/pool.js @@ -1,22 +1,22 @@ -var test = require('ava') -var indy = require('../') -var makeTestPool = require('./helpers/makeTestPool') +const test = require('ava') +const indy = require('../') +const makeTestPool = require('./helpers/makeTestPool') test('pool', async function (t) { - var err = await t.throwsAsync(indy.createPoolLedgerConfig('', '')) + let err = await t.throwsAsync(indy.createPoolLedgerConfig('', '')) t.is(err.indyName, 'CommonInvalidParam2') err = await t.throwsAsync(indy.createPoolLedgerConfig('not_a_real_pool', { - 'genesis_txn': '/not/a/real/file.txn' + genesis_txn: '/not/a/real/file.txn' })) t.is(err.indyName, 'CommonIOError') - var pool = await makeTestPool() + const pool = await makeTestPool() t.is((await indy.listPools()).map(p => p.pool).indexOf(pool.name), -1) t.is(await indy.createPoolLedgerConfig(pool.name, { - 'genesis_txn': pool.file + genesis_txn: pool.file }), null) await indy.setProtocolVersion(1) @@ -26,7 +26,7 @@ test('pool', async function (t) { await indy.setProtocolVersion(2) - var poolH = await indy.openPoolLedger(pool.name, null) + const poolH = await indy.openPoolLedger(pool.name, null) t.truthy(poolH >= 0) err = await t.throwsAsync(indy.refreshPoolLedger(-1)) diff --git a/wrappers/nodejs/test/wallet.js b/wrappers/nodejs/test/wallet.js index 433d3f7e1b..ef1010b620 100644 --- a/wrappers/nodejs/test/wallet.js +++ b/wrappers/nodejs/test/wallet.js @@ -1,22 +1,22 @@ -var test = require('ava') -var indy = require('../') -var cuid = require('cuid') -var path = require('path') -var fs = require('fs') -var initTestPool = require('./helpers/initTestPool') -var indyHomeDir = require('home-dir')('.indy_client') +const test = require('ava') +const indy = require('../') +const cuid = require('cuid') +const path = require('path') +const fs = require('fs') +const initTestPool = require('./helpers/initTestPool') +const indyHomeDir = require('home-dir')('.indy_client') test('wallet', async function (t) { - var pool = await initTestPool() + const pool = await initTestPool() - var walletConfig = { 'id': 'wallet-' + cuid() } - var walletCredentials = { 'key': 'key' } + const walletConfig = { id: 'wallet-' + cuid() } + let walletCredentials = { key: 'key' } await indy.createWallet(walletConfig, walletCredentials) - var err = await t.throwsAsync(indy.createWallet(walletConfig, walletCredentials)) + let err = await t.throwsAsync(indy.createWallet(walletConfig, walletCredentials)) t.is(err.indyName, 'WalletAlreadyExistsError') - var handle = await indy.openWallet(walletConfig, walletCredentials) + let handle = await indy.openWallet(walletConfig, walletCredentials) t.truthy(handle >= 0) // err = await t.throwsAsync(indy.openWallet(walletConfig, walletCredentials)) @@ -25,13 +25,13 @@ test('wallet', async function (t) { err = await t.throwsAsync(indy.closeWallet(-1)) t.is(err.indyName, 'WalletInvalidHandle') - var [did] = await indy.createAndStoreMyDid(handle, {}) - var didBeforeExport = await indy.getMyDidWithMeta(handle, did) + const [did] = await indy.createAndStoreMyDid(handle, {}) + const didBeforeExport = await indy.getMyDidWithMeta(handle, did) - var exportPath = path.join(indyHomeDir, 'export_wallet-' + cuid()) - var exportConfig = { - 'key': 'export_key', - 'path': exportPath + const exportPath = path.join(indyHomeDir, 'export_wallet-' + cuid()) + const exportConfig = { + key: 'export_key', + path: exportPath } await indy.exportWallet(handle, exportConfig) @@ -46,15 +46,15 @@ test('wallet', async function (t) { handle = await indy.openWallet(walletConfig, walletCredentials) t.truthy(handle >= 0) - var didAfterImport = await indy.getMyDidWithMeta(handle, did) + const didAfterImport = await indy.getMyDidWithMeta(handle, did) t.deepEqual(didBeforeExport, didAfterImport) await indy.closeWallet(handle) await indy.deleteWallet(walletConfig, walletCredentials) - var key = await indy.generateWalletKey({}) - walletCredentials = { 'key': key, 'key_derivation_method': 'RAW' } + const key = await indy.generateWalletKey({}) + walletCredentials = { key: key, key_derivation_method: 'RAW' } await indy.createWallet(walletConfig, walletCredentials) await indy.deleteWallet(walletConfig, walletCredentials)