Files
xahau.js/test/setupClientWeb.ts
Nathan Nichols 8b95ee5fab build: Initial linting setup (#1560)
* sets up linting config and runs `yarn lint --fix` once, so that all changes will show up correctly in future PRs.

* Note that there are still a lot of linter errors.
2021-10-04 14:10:10 -04:00

47 lines
1.1 KiB
TypeScript

import { Client, BroadcastClient } from "xrpl-local";
const port = 34371;
const baseUrl = "ws://testripple.circleci.com:";
function setup(this: any, port_ = port) {
const tclient = new Client(baseUrl + port_);
return tclient
.connect()
.then(() => {
return tclient.connection.request({
command: "test_command",
data: { openOnOtherPort: true },
});
})
.then((got) => {
return new Promise<void>((resolve, reject) => {
this.client = new Client(baseUrl + got.port);
this.client.connect().then(resolve).catch(reject);
});
})
.then(() => {
return tclient.disconnect();
});
}
function setupBroadcast(this: any) {
const servers = [port, port + 1].map((port_) => baseUrl + port_);
this.client = new BroadcastClient(servers);
return new Promise<void>((resolve, reject) => {
this.client.connect().then(resolve).catch(reject);
});
}
function teardown(this: any) {
if (this.client.isConnected()) {
return this.client.disconnect();
}
return undefined;
}
export default {
setup,
teardown,
setupBroadcast,
};