mirror of
https://github.com/Xahau/xahau.js.git
synced 2025-11-20 12:15:51 +00:00
Rename RippleAPI client to Client (#1520)
* rename RippleAPI -> XrplClient * more renames * move API stuff to client folder * rename all api -> client * fix tests * make tests run * fix integ tests * fix urls * fix merge issues * XrplClient -> Client * fix merge issues * rename xrpl-client npm symlink to xrpl-local
This commit is contained in:
70
test/setup-client.ts
Normal file
70
test/setup-client.ts
Normal file
@@ -0,0 +1,70 @@
|
||||
import {Client, ClientBroadcast} from 'xrpl-local'
|
||||
import ledgerClosed from './fixtures/rippled/ledger-close.json'
|
||||
import {createMockRippled} from './mock-rippled'
|
||||
import {getFreePort} from './utils'
|
||||
|
||||
function setupMockRippledConnection(testcase, port) {
|
||||
return new Promise<void>((resolve, reject) => {
|
||||
testcase.mockRippled = createMockRippled(port)
|
||||
testcase._mockedServerPort = port
|
||||
testcase.client = new Client({server: 'ws://localhost:' + port})
|
||||
testcase.client
|
||||
.connect()
|
||||
.then(() => {
|
||||
testcase.client.once('ledger', () => resolve())
|
||||
testcase.client.connection._ws.emit(
|
||||
'message',
|
||||
JSON.stringify(ledgerClosed)
|
||||
)
|
||||
})
|
||||
.catch(reject)
|
||||
})
|
||||
}
|
||||
|
||||
function setupMockRippledConnectionForBroadcast(testcase, ports) {
|
||||
return new Promise<void>((resolve, reject) => {
|
||||
const servers = ports.map((port) => 'ws://localhost:' + port)
|
||||
testcase.mocks = ports.map((port) => createMockRippled(port))
|
||||
testcase.client = new ClientBroadcast(servers)
|
||||
testcase.client
|
||||
.connect()
|
||||
.then(() => {
|
||||
testcase.client.once('ledger', () => resolve())
|
||||
testcase.mocks[0].socket.send(JSON.stringify(ledgerClosed))
|
||||
})
|
||||
.catch(reject)
|
||||
})
|
||||
}
|
||||
|
||||
function setup(this: any) {
|
||||
return getFreePort().then((port) => {
|
||||
return setupMockRippledConnection(this, port)
|
||||
})
|
||||
}
|
||||
|
||||
function setupBroadcast(this: any) {
|
||||
return Promise.all([getFreePort(), getFreePort()]).then((ports) => {
|
||||
return setupMockRippledConnectionForBroadcast(this, ports)
|
||||
})
|
||||
}
|
||||
|
||||
function teardown(this: any, done) {
|
||||
this.client
|
||||
.disconnect()
|
||||
.then(() => {
|
||||
if (this.mockRippled != null) {
|
||||
this.mockRippled.close()
|
||||
} else {
|
||||
this.mocks.forEach((mock) => mock.close())
|
||||
}
|
||||
setImmediate(done)
|
||||
})
|
||||
.catch(done)
|
||||
}
|
||||
|
||||
export default {
|
||||
setup: setup,
|
||||
teardown: teardown,
|
||||
setupBroadcast: setupBroadcast,
|
||||
createMockRippled: createMockRippled
|
||||
}
|
||||
Reference in New Issue
Block a user