From 7ec128c2e441df19a8ccc568d4135ce60327562b Mon Sep 17 00:00:00 2001 From: "Fred K. Schott" Date: Mon, 21 Oct 2019 11:28:57 -0700 Subject: [PATCH 1/4] move tests to TypeScript --- test/api-test.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/api-test.ts b/test/api-test.ts index c91585ab..2c6a9f0f 100644 --- a/test/api-test.ts +++ b/test/api-test.ts @@ -4609,7 +4609,7 @@ describe('RippleAPI', function () { }); } return utils.getRecursive(getter, 10).then(() => { - assert(false, 'Should throw Error'); + assert(false, 'Should th row Error'); }).catch(error => { assert(error instanceof Error); }); From 39f6a5179497fa6a7f6227de3ef5d2fbccc539cf Mon Sep 17 00:00:00 2001 From: "Fred K. Schott" Date: Tue, 15 Oct 2019 21:12:18 -0700 Subject: [PATCH 2/4] convert the rest of the helper files to ts --- src/broadcast.ts | 4 +- test/api-test.ts | 9 ++-- test/broadcast-api-test.ts | 2 +- test/fixtures/addresses.js | 13 ------ test/fixtures/addresses.json | 12 +++++ test/fixtures/hashes.js | 12 ----- test/fixtures/hashes.json | 10 +++++ test/fixtures/index.js | 7 --- .../{broadcast-test.js => broadcast-test.ts} | 3 +- ...{connection-test.js => connection-test.ts} | 3 +- ...ntegration-test.js => integration-test.ts} | 27 +++++------- test/{mock-rippled.js => mock-rippled.ts} | 44 +++++++++++-------- test/{mocked-server.js => mocked-server.ts} | 6 +-- test/{setup-api-web.js => setup-api-web.ts} | 15 +++---- test/{setup-api.js => setup-api.ts} | 20 ++++----- test/utils/{net-utils.js => net-utils.ts} | 14 ++---- 16 files changed, 89 insertions(+), 112 deletions(-) delete mode 100644 test/fixtures/addresses.js create mode 100644 test/fixtures/addresses.json delete mode 100644 test/fixtures/hashes.js create mode 100644 test/fixtures/hashes.json delete mode 100644 test/fixtures/index.js rename test/integration/{broadcast-test.js => broadcast-test.ts} (84%) rename test/integration/{connection-test.js => connection-test.ts} (94%) rename test/integration/{integration-test.js => integration-test.ts} (96%) rename test/{mock-rippled.js => mock-rippled.ts} (96%) rename test/{mocked-server.js => mocked-server.ts} (81%) rename test/{setup-api-web.js => setup-api-web.ts} (79%) rename test/{setup-api.js => setup-api.ts} (78%) rename test/utils/{net-utils.js => net-utils.ts} (70%) diff --git a/src/broadcast.ts b/src/broadcast.ts index 5de66fd2..23872cc2 100644 --- a/src/broadcast.ts +++ b/src/broadcast.ts @@ -1,13 +1,13 @@ import * as _ from 'lodash' -import {RippleAPI} from './api' +import {RippleAPI, APIOptions} from './api' class RippleAPIBroadcast extends RippleAPI { ledgerVersion: number | undefined = undefined private _apis: RippleAPI[] - constructor(servers, options) { + constructor(servers, options: APIOptions = {}) { super(options) const apis: RippleAPI[] = servers.map(server => new RippleAPI( diff --git a/test/api-test.ts b/test/api-test.ts index 2c6a9f0f..6917aa52 100644 --- a/test/api-test.ts +++ b/test/api-test.ts @@ -4,9 +4,10 @@ import _ from 'lodash'; import { RippleAPI } from 'ripple-api'; import { RecursiveData } from 'ripple-api/ledger/utils'; import binary from 'ripple-binary-codec'; -import { requests, responses } from './fixtures'; -import addresses from './fixtures/addresses'; -import hashes from './fixtures/hashes'; +import requests from './fixtures/requests'; +import responses from './fixtures/responses'; +import addresses from './fixtures/addresses.json'; +import hashes from './fixtures/hashes.json'; import ledgerClosed from './fixtures/rippled/ledger-close-newer.json'; import setupAPI from './setup-api'; const {validate, schemaValidator} = RippleAPI._PRIVATE; @@ -4609,7 +4610,7 @@ describe('RippleAPI', function () { }); } return utils.getRecursive(getter, 10).then(() => { - assert(false, 'Should th row Error'); + assert(false, 'Should throw Error'); }).catch(error => { assert(error instanceof Error); }); diff --git a/test/broadcast-api-test.ts b/test/broadcast-api-test.ts index 36efb573..a84c4ecf 100644 --- a/test/broadcast-api-test.ts +++ b/test/broadcast-api-test.ts @@ -1,7 +1,7 @@ import _ from 'lodash'; import assert from 'assert-diff'; import setupAPI from './setup-api'; -import {responses} from './fixtures'; +import responses from './fixtures/responses'; import ledgerClosed from './fixtures/rippled/ledger-close.json'; import {RippleAPI} from 'ripple-api'; const schemaValidator = RippleAPI._PRIVATE.schemaValidator; diff --git a/test/fixtures/addresses.js b/test/fixtures/addresses.js deleted file mode 100644 index cf5a0f8f..00000000 --- a/test/fixtures/addresses.js +++ /dev/null @@ -1,13 +0,0 @@ -'use strict'; -module.exports = { - ACCOUNT: 'r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59', - ACCOUNT_X: 'X7AcgcsBL6XDcUb289X4mJ8djcdyKaB5hJDWMArnXr61cqZ', - ACCOUNT_T: 'T719a5UwUCnEs54UsxG9CJYYDhwmFCqkr7wxCcNcfZ6p5GZ', - OTHER_ACCOUNT: 'rpZc4mVfWUif9CRoHRKKcmhu1nx2xktxBo', - THIRD_ACCOUNT: 'rwBYyfufTzk77zUSKEu4MvixfarC35av1J', - FOURTH_ACCOUNT: 'rJnZ4YHCUsHvQu7R6mZohevKJDHFzVD6Zr', - ISSUER: 'rMH4UxPrbuMa1spCBR98hLLyNJp4d8p4tM', - NOTFOUND: 'rajTAg3hon5Lcu1RxQQPxTgHvqfhc1EaUS', - SECRET: 'shsWGZcmZz6YsWWmcnpfr6fLTdtFV', - SOURCE_LOW_FUNDS: 'rhVgDEfS1r1fLyRUZCpab4TdowZcAJwHy2' -}; diff --git a/test/fixtures/addresses.json b/test/fixtures/addresses.json new file mode 100644 index 00000000..585be161 --- /dev/null +++ b/test/fixtures/addresses.json @@ -0,0 +1,12 @@ +{ + "ACCOUNT": "r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59", + "ACCOUNT_X": "X7AcgcsBL6XDcUb289X4mJ8djcdyKaB5hJDWMArnXr61cqZ", + "ACCOUNT_T": "T719a5UwUCnEs54UsxG9CJYYDhwmFCqkr7wxCcNcfZ6p5GZ", + "OTHER_ACCOUNT": "rpZc4mVfWUif9CRoHRKKcmhu1nx2xktxBo", + "THIRD_ACCOUNT": "rwBYyfufTzk77zUSKEu4MvixfarC35av1J", + "FOURTH_ACCOUNT": "rJnZ4YHCUsHvQu7R6mZohevKJDHFzVD6Zr", + "ISSUER": "rMH4UxPrbuMa1spCBR98hLLyNJp4d8p4tM", + "NOTFOUND": "rajTAg3hon5Lcu1RxQQPxTgHvqfhc1EaUS", + "SECRET": "shsWGZcmZz6YsWWmcnpfr6fLTdtFV", + "SOURCE_LOW_FUNDS": "rhVgDEfS1r1fLyRUZCpab4TdowZcAJwHy2" +} \ No newline at end of file diff --git a/test/fixtures/hashes.js b/test/fixtures/hashes.js deleted file mode 100644 index 07ddd56b..00000000 --- a/test/fixtures/hashes.js +++ /dev/null @@ -1,12 +0,0 @@ -'use strict'; - -module.exports = { - VALID_TRANSACTION_HASH: - 'F4AB442A6D4CBB935D66E1DA7309A5FC71C7143ED4049053EC14E3875B0CF9BF', - NOTFOUND_TRANSACTION_HASH: - 'D7FA4BBD23FAA88FC208BD194EC435D7A1FD9E2E8887B9C17A811A0739AA4AE4', - INVALID_TRANSACTION_HASH: - 'XF4AB442A6D4CBB935D66E1DA7309A5FC71C7143ED4049053EC14E3875B0CF9BF', - ORDER_HASH: - '71AE74B03DE3B9A06C559AD4D173A362D96B7D2A5AA35F56B9EF21543D627F34' -}; diff --git a/test/fixtures/hashes.json b/test/fixtures/hashes.json new file mode 100644 index 00000000..4183968b --- /dev/null +++ b/test/fixtures/hashes.json @@ -0,0 +1,10 @@ +{ + "VALID_TRANSACTION_HASH": + "F4AB442A6D4CBB935D66E1DA7309A5FC71C7143ED4049053EC14E3875B0CF9BF", + "NOTFOUND_TRANSACTION_HASH": + "D7FA4BBD23FAA88FC208BD194EC435D7A1FD9E2E8887B9C17A811A0739AA4AE4", + "INVALID_TRANSACTION_HASH": + "XF4AB442A6D4CBB935D66E1DA7309A5FC71C7143ED4049053EC14E3875B0CF9BF", + "ORDER_HASH": + "71AE74B03DE3B9A06C559AD4D173A362D96B7D2A5AA35F56B9EF21543D627F34" +} diff --git a/test/fixtures/index.js b/test/fixtures/index.js deleted file mode 100644 index 9f0d0980..00000000 --- a/test/fixtures/index.js +++ /dev/null @@ -1,7 +0,0 @@ -'use strict'; - -module.exports = { - responses: require('./responses'), - requests: require('./requests'), - rippled: require('./rippled') -}; diff --git a/test/integration/broadcast-test.js b/test/integration/broadcast-test.ts similarity index 84% rename from test/integration/broadcast-test.js rename to test/integration/broadcast-test.ts index fca74216..61fefc31 100644 --- a/test/integration/broadcast-test.js +++ b/test/integration/broadcast-test.ts @@ -1,5 +1,4 @@ -'use strict'; -const {RippleAPIBroadcast} = require('../../src'); +import {RippleAPIBroadcast} from '../../src'; function main() { const servers = ['wss://s1.ripple.com', 'wss://s2.ripple.com']; diff --git a/test/integration/connection-test.js b/test/integration/connection-test.ts similarity index 94% rename from test/integration/connection-test.js rename to test/integration/connection-test.ts index ecbb54b0..20ebbc4d 100644 --- a/test/integration/connection-test.js +++ b/test/integration/connection-test.ts @@ -1,5 +1,4 @@ -'use strict'; -const Connection = require('../../src/common/connection'); +import Connection from '../../src/common/connection'; const request1 = { command: 'server_info' diff --git a/test/integration/integration-test.js b/test/integration/integration-test.ts similarity index 96% rename from test/integration/integration-test.js rename to test/integration/integration-test.ts index ab29670c..30fc7243 100644 --- a/test/integration/integration-test.js +++ b/test/integration/integration-test.ts @@ -1,15 +1,12 @@ -/* eslint-disable max-nested-callbacks */ -/* eslint-disable max-params */ -'use strict'; -const _ = require('lodash'); -const assert = require('assert'); -const errors = require('../../src/common/errors'); -const wallet = require('./wallet'); -const requests = require('../fixtures/requests'); -const RippleAPI = require('ripple-api').RippleAPI; -const {isValidAddress} = require('ripple-address-codec'); -const {isValidSecret} = require('../../src/common'); -const {payTo, ledgerAccept} = require('./utils'); +import _ from 'lodash'; +import assert from 'assert'; +import wallet from './wallet'; +import requests from '../fixtures/requests'; +import {RippleAPI} from 'ripple-api'; +import {isValidAddress} from 'ripple-address-codec'; +import {payTo, ledgerAccept} from './utils'; +import { errors } from 'ripple-api/common'; +import { isValidSecret } from 'ripple-api/common/utils'; // how long before each test case times out @@ -71,7 +68,7 @@ function testTransaction(testcase, type, lastClosedLedgerVersion, prepared, }); } -function setup(server = 'wss://s1.ripple.com') { +function setup(this: any, server = 'wss://s1.ripple.com') { this.api = new RippleAPI({server}); console.log('CONNECTING...'); return this.api.connect().then(() => { @@ -167,11 +164,11 @@ function setupAccounts(testcase) { return promise; } -function teardown() { +function teardown(this: any) { return this.api.disconnect(); } -function suiteSetup() { +function suiteSetup(this: any) { this.transactions = []; return setup.bind(this)(serverUrl) diff --git a/test/mock-rippled.js b/test/mock-rippled.ts similarity index 96% rename from test/mock-rippled.js rename to test/mock-rippled.ts index 2a13d0d6..800074cb 100644 --- a/test/mock-rippled.js +++ b/test/mock-rippled.ts @@ -1,17 +1,16 @@ -'use strict'; // eslint-disable-line -const _ = require('lodash'); -const assert = require('assert'); -const WebSocketServer = require('ws').Server; -const EventEmitter2 = require('eventemitter2').EventEmitter2; -const fixtures = require('./fixtures/rippled'); -const addresses = require('./fixtures/addresses'); -const hashes = require('./fixtures/hashes'); -const transactionsResponse = require('./fixtures/rippled/account-tx'); -const accountLinesResponse = require('./fixtures/rippled/account-lines'); -const accountObjectsResponse = require('./fixtures/rippled/account-objects'); -const fullLedger = require('./fixtures/rippled/ledger-full-38129.json'); -const { getFreePort } = require('./utils/net-utils'); -const fs = require('fs'); +import _ from 'lodash'; +import fs from 'fs'; +import assert from 'assert'; +import {Server as WebSocketServer} from 'ws'; +import {EventEmitter2} from 'eventemitter2'; +import fixtures from './fixtures/rippled'; +import addresses from './fixtures/addresses.json'; +import hashes from './fixtures/hashes.json'; +import transactionsResponse from './fixtures/rippled/account-tx'; +import accountLinesResponse from './fixtures/rippled/account-lines'; +import accountObjectsResponse from './fixtures/rippled/account-objects'; +import fullLedger from './fixtures/rippled/ledger-full-38129.json'; +import { getFreePort } from './utils/net-utils'; function isUSD(json) { return json === 'USD' || json === '0000000000000000000000005553440000000000'; @@ -49,8 +48,17 @@ function createLedgerResponse(request, response) { return JSON.stringify(newResponse); } -module.exports = function createMockRippled(port) { - const mock = new WebSocketServer({ port: port }); +interface CustomWebSocketServer extends WebSocketServer, EventEmitter2 { + expectedRequests: any + expect: any + config: any + socket: any + onAny: any + event: any +} + +export function createMockRippled(port) { + const mock = new WebSocketServer({ port: port }) as CustomWebSocketServer; _.assign(mock, EventEmitter2.prototype); const close = mock.close; @@ -73,7 +81,7 @@ module.exports = function createMockRippled(port) { mock.expectedRequests = expectedRequests; }; - mock.on('connection', function (conn) { + mock.on('connection', function (this: CustomWebSocketServer, conn: any) { if (mock.config.breakNextConnection) { mock.config.breakNextConnection = false; conn.terminate(); @@ -94,7 +102,7 @@ module.exports = function createMockRippled(port) { mock.config = {}; - mock.onAny(function () { + mock.onAny(function (this: CustomWebSocketServer) { if (this.event.indexOf('request_') !== 0) { return; } diff --git a/test/mocked-server.js b/test/mocked-server.ts similarity index 81% rename from test/mocked-server.js rename to test/mocked-server.ts index 7772c861..249b6f97 100644 --- a/test/mocked-server.js +++ b/test/mocked-server.ts @@ -1,9 +1,5 @@ -'use strict'; - - const port = 34371; - -const createMockRippled = require('./mock-rippled'); +import {createMockRippled} from './mock-rippled'; function main() { if (global.describe) { diff --git a/test/setup-api-web.js b/test/setup-api-web.ts similarity index 79% rename from test/setup-api-web.js rename to test/setup-api-web.ts index eceddde4..ba878435 100644 --- a/test/setup-api-web.js +++ b/test/setup-api-web.ts @@ -1,13 +1,10 @@ -/* eslint-disable max-nested-callbacks */ -'use strict'; // eslint-disable-line - -const {RippleAPI, RippleAPIBroadcast} = require('ripple-api'); -const ledgerClosed = require('./fixtures/rippled/ledger-close'); +import {RippleAPI, RippleAPIBroadcast} from 'ripple-api'; +import ledgerClosed from './fixtures/rippled/ledger-close.json'; const port = 34371; const baseUrl = 'ws://testripple.circleci.com:'; -function setup(port_ = port) { +function setup(this: any, port_ = port) { const tapi = new RippleAPI({server: baseUrl + port_}); return tapi.connect().then(() => { return tapi.connection.request({ @@ -27,7 +24,7 @@ function setup(port_ = port) { }); } -function setupBroadcast() { +function setupBroadcast(this: any) { const servers = [port, port + 1].map(port_ => baseUrl + port_); this.api = new RippleAPIBroadcast(servers); return new Promise((resolve, reject) => { @@ -39,14 +36,14 @@ function setupBroadcast() { }); } -function teardown() { +function teardown(this: any) { if (this.api.isConnected()) { return this.api.disconnect(); } return undefined; } -module.exports = { +export default { setup: setup, teardown: teardown, setupBroadcast: setupBroadcast diff --git a/test/setup-api.js b/test/setup-api.ts similarity index 78% rename from test/setup-api.js rename to test/setup-api.ts index ba1ca82f..97fa8339 100644 --- a/test/setup-api.js +++ b/test/setup-api.ts @@ -1,11 +1,7 @@ -'use strict'; // eslint-disable-line - -const RippleAPI = require('ripple-api').RippleAPI; -const RippleAPIBroadcast = require('ripple-api').RippleAPIBroadcast; -const ledgerClosed = require('./fixtures/rippled/ledger-close'); -const createMockRippled = require('./mock-rippled'); -const {getFreePort} = require('./utils/net-utils'); - +import {RippleAPI, RippleAPIBroadcast} from 'ripple-api'; +import ledgerClosed from './fixtures/rippled/ledger-close.json'; +import {createMockRippled} from './mock-rippled'; +import {getFreePort} from './utils/net-utils'; function setupMockRippledConnection(testcase, port) { return new Promise((resolve, reject) => { @@ -31,19 +27,19 @@ function setupMockRippledConnectionForBroadcast(testcase, ports) { }); } -function setup() { +function setup(this: any) { return getFreePort().then(port => { return setupMockRippledConnection(this, port); }); } -function setupBroadcast() { +function setupBroadcast(this: any) { return Promise.all([getFreePort(), getFreePort()]).then(ports => { return setupMockRippledConnectionForBroadcast(this, ports); }); } -function teardown(done) { +function teardown(this: any, done) { this.api.disconnect().then(() => { if (this.mockRippled !== undefined) { this.mockRippled.close(); @@ -54,7 +50,7 @@ function teardown(done) { }).catch(done); } -module.exports = { +export default { setup: setup, teardown: teardown, setupBroadcast: setupBroadcast, diff --git a/test/utils/net-utils.js b/test/utils/net-utils.ts similarity index 70% rename from test/utils/net-utils.js rename to test/utils/net-utils.ts index 42f5cfad..e98ded4b 100644 --- a/test/utils/net-utils.js +++ b/test/utils/net-utils.ts @@ -1,14 +1,12 @@ -'use strict'; // eslint-disable-line - -const net = require('net'); +import net from 'net'; // using a free port instead of a constant port enables parallelization -function getFreePort() { +export function getFreePort() { return new Promise((resolve, reject) => { const server = net.createServer(); let port; server.on('listening', function() { - port = server.address().port; + port = (server.address() as any).port; server.close(); }); server.on('close', function() { @@ -19,8 +17,4 @@ function getFreePort() { }); server.listen(0); }); -} - -module.exports = { - getFreePort -}; +} \ No newline at end of file From 2dbad40a34887f7f7dd26a1742e3d641a1e2fb5e Mon Sep 17 00:00:00 2001 From: "Fred K. Schott" Date: Sat, 2 Nov 2019 07:51:39 -0700 Subject: [PATCH 3/4] update assert-diff --- package.json | 4 ++-- yarn.lock | 22 +++++++++++----------- 2 files changed, 13 insertions(+), 13 deletions(-) diff --git a/package.json b/package.json index 957262c4..ae205e6e 100644 --- a/package.json +++ b/package.json @@ -23,8 +23,8 @@ "https-proxy-agent": "^3.0.0", "jsonschema": "1.2.2", "lodash": "^4.17.4", - "ripple-address-codec": "^4.0.0", "lodash.isequal": "^4.5.0", + "ripple-address-codec": "^4.0.0", "ripple-binary-codec": "^0.2.4", "ripple-keypairs": "^0.10.1", "ripple-lib-transactionparser": "0.8.0", @@ -35,7 +35,7 @@ "@types/node": "11.13.0", "@typescript-eslint/eslint-plugin": "^2.3.3", "@typescript-eslint/parser": "^2.3.3", - "assert-diff": "^1.0.1", + "assert-diff": "^2.0.3", "doctoc": "^0.15.0", "ejs": "^2.3.4", "eslint": "^6.5.1", diff --git a/yarn.lock b/yarn.lock index ad36ecec..f86831d4 100644 --- a/yarn.lock +++ b/yarn.lock @@ -89,6 +89,13 @@ lodash "^4.17.13" to-fast-properties "^2.0.0" +"@types/base-x@^3.0.0": + version "3.0.0" + resolved "https://registry.yarnpkg.com/@types/base-x/-/base-x-3.0.0.tgz#a1365259d1d3fa3ff973ab543192a6bdd4cb2f90" + integrity sha512-vnqSlpsv9uFX5/z8GyKWAfWHhLGJDBkrgRRsnxlsX23DHOlNyqP/eHQiv4TwnYcZULzQIxaWA/xRWU9Dyy4qzw== + dependencies: + "@types/node" "*" + "@types/eslint-visitor-keys@^1.0.0": version "1.0.0" resolved "https://registry.yarnpkg.com/@types/eslint-visitor-keys/-/eslint-visitor-keys-1.0.0.tgz#1ee30d79544ca84d68d4b3cdb0af4f205663dd2d" @@ -99,13 +106,6 @@ resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.3.tgz#bdfd69d61e464dcc81b25159c270d75a73c1a636" integrity sha512-Il2DtDVRGDcqjDtE+rF8iqg1CArehSK84HZJCT7AMITlyXRBpuPhqGLDQMowraqqu1coEaimg4ZOqggt6L6L+A== -"@types/base-x@^3.0.0": - version "3.0.0" - resolved "https://registry.yarnpkg.com/@types/base-x/-/base-x-3.0.0.tgz#a1365259d1d3fa3ff973ab543192a6bdd4cb2f90" - integrity sha512-vnqSlpsv9uFX5/z8GyKWAfWHhLGJDBkrgRRsnxlsX23DHOlNyqP/eHQiv4TwnYcZULzQIxaWA/xRWU9Dyy4qzw== - dependencies: - "@types/node" "*" - "@types/lodash@^4.14.136": version "4.14.144" resolved "https://registry.yarnpkg.com/@types/lodash/-/lodash-4.14.144.tgz#12e57fc99064bce45e5ab3c8bc4783feb75eab8e" @@ -423,10 +423,10 @@ asn1.js@^4.0.0: inherits "^2.0.1" minimalistic-assert "^1.0.0" -assert-diff@^1.0.1: - version "1.2.6" - resolved "https://registry.yarnpkg.com/assert-diff/-/assert-diff-1.2.6.tgz#1b44d6f24a7e3018f557768ee350ae9a732c2fc6" - integrity sha512-cKyCfCQrLsHubcvDo4n5lGJPxN5gwpm4Hmsjs9/DJCFs4a5jiNvhKRxKP2DZGxNxOf9Iv3pxOoBSCQ+8eiNIKA== +assert-diff@^2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/assert-diff/-/assert-diff-2.0.3.tgz#f7a5ab51f8da1bf2dbc9afd3f0b9ea6919808a74" + integrity sha512-TAPT9BmNP3384kP9jdkgRIYdddSO2hG3oG8B5+hoTd2khGC0XrM8ZT+FEkTr4kFFhzDuUveGtvNGcXD63qP6Mw== dependencies: assert-plus "1.0.0" json-diff "0.5.2" From 6692fbeed4502abf553ccf3832e361e9fe53f7c2 Mon Sep 17 00:00:00 2001 From: "Fred K. Schott" Date: Mon, 4 Nov 2019 19:20:34 -0800 Subject: [PATCH 4/4] respond to comments --- test/api-test.ts | 4 ++-- test/integration/integration-test.ts | 4 ++-- test/mock-rippled.ts | 15 +++++---------- 3 files changed, 9 insertions(+), 14 deletions(-) diff --git a/test/api-test.ts b/test/api-test.ts index 6917aa52..aa0dca45 100644 --- a/test/api-test.ts +++ b/test/api-test.ts @@ -1,8 +1,8 @@ import assert from 'assert-diff'; import BigNumber from 'bignumber.js'; import _ from 'lodash'; -import { RippleAPI } from 'ripple-api'; -import { RecursiveData } from 'ripple-api/ledger/utils'; +import {RippleAPI} from 'ripple-api'; +import {RecursiveData} from 'ripple-api/ledger/utils'; import binary from 'ripple-binary-codec'; import requests from './fixtures/requests'; import responses from './fixtures/responses'; diff --git a/test/integration/integration-test.ts b/test/integration/integration-test.ts index 30fc7243..bd5a4953 100644 --- a/test/integration/integration-test.ts +++ b/test/integration/integration-test.ts @@ -5,8 +5,8 @@ import requests from '../fixtures/requests'; import {RippleAPI} from 'ripple-api'; import {isValidAddress} from 'ripple-address-codec'; import {payTo, ledgerAccept} from './utils'; -import { errors } from 'ripple-api/common'; -import { isValidSecret } from 'ripple-api/common/utils'; +import {errors} from 'ripple-api/common'; +import {isValidSecret} from 'ripple-api/common/utils'; // how long before each test case times out diff --git a/test/mock-rippled.ts b/test/mock-rippled.ts index 800074cb..b988ab1b 100644 --- a/test/mock-rippled.ts +++ b/test/mock-rippled.ts @@ -10,7 +10,7 @@ import transactionsResponse from './fixtures/rippled/account-tx'; import accountLinesResponse from './fixtures/rippled/account-lines'; import accountObjectsResponse from './fixtures/rippled/account-objects'; import fullLedger from './fixtures/rippled/ledger-full-38129.json'; -import { getFreePort } from './utils/net-utils'; +import {getFreePort} from './utils/net-utils'; function isUSD(json) { return json === 'USD' || json === '0000000000000000000000005553440000000000'; @@ -48,17 +48,12 @@ function createLedgerResponse(request, response) { return JSON.stringify(newResponse); } -interface CustomWebSocketServer extends WebSocketServer, EventEmitter2 { - expectedRequests: any - expect: any - config: any - socket: any - onAny: any - event: any -} +// We mock out WebSocketServer in these tests and add a lot of custom +// properties not defined on the normal WebSocketServer object. +type MockedWebSocketServer = any; export function createMockRippled(port) { - const mock = new WebSocketServer({ port: port }) as CustomWebSocketServer; + const mock = new WebSocketServer({ port: port }) as MockedWebSocketServer; _.assign(mock, EventEmitter2.prototype); const close = mock.close;