Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
79 changes: 37 additions & 42 deletions packages/tendermint-rpc/src/comet38/comet38client.spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -252,27 +252,25 @@ function defaultTestSuite(rpcFactory: () => RpcClient, expected: ExpectedValues)

describe("blockSearch", () => {
beforeAll(async () => {
if (tendermintEnabled) {
const client = Comet38Client.create(rpcFactory());
const client = Comet38Client.create(rpcFactory());

async function sendTx(): Promise<void> {
const tx = buildKvTx(randomString(), randomString());
async function sendTx(): Promise<void> {
const tx = buildKvTx(randomString(), randomString());

const txRes = await client.broadcastTxCommit({ tx: tx });
expect(responses.broadcastTxCommitSuccess(txRes)).toEqual(true);
expect(txRes.height).toBeTruthy();
expect(txRes.hash.length).not.toEqual(0);
}
const txRes = await client.broadcastTxCommit({ tx: tx });
expect(responses.broadcastTxCommitSuccess(txRes)).toEqual(true);
expect(txRes.height).toBeTruthy();
expect(txRes.hash.length).not.toEqual(0);
}

// send 3 txs
await sendTx();
await sendTx();
await sendTx();
// send 3 txs
await sendTx();
await sendTx();
await sendTx();

client.disconnect();
client.disconnect();

await tendermintSearchIndexUpdated();
}
await tendermintSearchIndexUpdated();
});

it("can paginate over blockSearch results", async () => {
Expand Down Expand Up @@ -435,29 +433,27 @@ function defaultTestSuite(rpcFactory: () => RpcClient, expected: ExpectedValues)
let broadcast1: responses.BroadcastTxCommitResponse | undefined;

beforeAll(async () => {
if (tendermintEnabled) {
const client = Comet38Client.create(rpcFactory());

async function sendTx(): Promise<[Uint8Array, responses.BroadcastTxCommitResponse]> {
const me = randomString();
const tx = buildKvTx(txKey, me);

const txRes = await client.broadcastTxCommit({ tx: tx });
expect(responses.broadcastTxCommitSuccess(txRes)).toEqual(true);
expect(txRes.height).toBeTruthy();
expect(txRes.hash.length).toEqual(32);
return [tx, txRes];
}

// send 3 txs
[tx1, broadcast1] = await sendTx();
await sendTx();
await sendTx();
const client = Comet38Client.create(rpcFactory());

client.disconnect();
async function sendTx(): Promise<[Uint8Array, responses.BroadcastTxCommitResponse]> {
const me = randomString();
const tx = buildKvTx(txKey, me);

await tendermintSearchIndexUpdated();
const txRes = await client.broadcastTxCommit({ tx: tx });
expect(responses.broadcastTxCommitSuccess(txRes)).toEqual(true);
expect(txRes.height).toBeTruthy();
expect(txRes.hash.length).toEqual(32);
return [tx, txRes];
}

// send 3 txs
[tx1, broadcast1] = await sendTx();
await sendTx();
await sendTx();

client.disconnect();

await tendermintSearchIndexUpdated();
});

it("finds a single tx by hash", async () => {
Expand Down Expand Up @@ -851,10 +847,10 @@ function websocketTestSuite(rpcFactory: () => RpcClient, expected: ExpectedValue
});
}

describe("Comet38Client with CometBFT 0.38 backend", () => {
(tendermintEnabled ? describe : xdescribe)("Comet38Client with CometBFT 0.38 backend", () => {
const { url, expected } = tendermintInstances[38];

(tendermintEnabled ? it : xit)("can connect to a given url", async () => {
it("can connect to a given url", async () => {
// http connection
{
const client = await Comet38Client.connect("http://" + url);
Expand All @@ -872,14 +868,13 @@ describe("Comet38Client with CometBFT 0.38 backend", () => {
}
});

(tendermintEnabled ? describe : xdescribe)("With HttpClient", () => {
describe("With HttpClient", () => {
defaultTestSuite(() => new HttpClient("http://" + url), expected);
});

(tendermintEnabled ? describe : xdescribe)("With WebsocketClient", () => {
describe("With WebsocketClient", () => {
// don't print out WebSocket errors if marked pending
const onError = globalThis.process?.env.TENDERMINT_ENABLED ? console.error : () => 0;
const factory = (): WebsocketClient => new WebsocketClient("ws://" + url, onError);
const factory = (): WebsocketClient => new WebsocketClient("ws://" + url, console.error);
defaultTestSuite(factory, expected);
websocketTestSuite(factory, expected);
});
Expand Down
79 changes: 37 additions & 42 deletions packages/tendermint-rpc/src/tendermint34/tendermint34client.spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -260,27 +260,25 @@ function defaultTestSuite(rpcFactory: () => RpcClient, expected: ExpectedValues)

describe("blockSearch", () => {
beforeAll(async () => {
if (tendermintEnabled) {
const client = Tendermint34Client.create(rpcFactory());
const client = Tendermint34Client.create(rpcFactory());

async function sendTx(): Promise<void> {
const tx = buildKvTx(randomString(), randomString());
async function sendTx(): Promise<void> {
const tx = buildKvTx(randomString(), randomString());

const txRes = await client.broadcastTxCommit({ tx: tx });
expect(responses.broadcastTxCommitSuccess(txRes)).toEqual(true);
expect(txRes.height).toBeTruthy();
expect(txRes.hash.length).not.toEqual(0);
}
const txRes = await client.broadcastTxCommit({ tx: tx });
expect(responses.broadcastTxCommitSuccess(txRes)).toEqual(true);
expect(txRes.height).toBeTruthy();
expect(txRes.hash.length).not.toEqual(0);
}

// send 3 txs
await sendTx();
await sendTx();
await sendTx();
// send 3 txs
await sendTx();
await sendTx();
await sendTx();

client.disconnect();
client.disconnect();

await tendermintSearchIndexUpdated();
}
await tendermintSearchIndexUpdated();
});

it("can paginate over blockSearch results", async () => {
Expand Down Expand Up @@ -442,29 +440,27 @@ function defaultTestSuite(rpcFactory: () => RpcClient, expected: ExpectedValues)
let broadcast1: responses.BroadcastTxCommitResponse | undefined;

beforeAll(async () => {
if (tendermintEnabled) {
const client = Tendermint34Client.create(rpcFactory());

async function sendTx(): Promise<[Uint8Array, responses.BroadcastTxCommitResponse]> {
const me = randomString();
const tx = buildKvTx(txKey, me);

const txRes = await client.broadcastTxCommit({ tx: tx });
expect(responses.broadcastTxCommitSuccess(txRes)).toEqual(true);
expect(txRes.height).toBeTruthy();
expect(txRes.hash.length).toEqual(32);
return [tx, txRes];
}

// send 3 txs
[tx1, broadcast1] = await sendTx();
await sendTx();
await sendTx();
const client = Tendermint34Client.create(rpcFactory());

client.disconnect();
async function sendTx(): Promise<[Uint8Array, responses.BroadcastTxCommitResponse]> {
const me = randomString();
const tx = buildKvTx(txKey, me);

await tendermintSearchIndexUpdated();
const txRes = await client.broadcastTxCommit({ tx: tx });
expect(responses.broadcastTxCommitSuccess(txRes)).toEqual(true);
expect(txRes.height).toBeTruthy();
expect(txRes.hash.length).toEqual(32);
return [tx, txRes];
}

// send 3 txs
[tx1, broadcast1] = await sendTx();
await sendTx();
await sendTx();

client.disconnect();

await tendermintSearchIndexUpdated();
});

it("finds a single tx by hash", async () => {
Expand Down Expand Up @@ -846,10 +842,10 @@ function websocketTestSuite(rpcFactory: () => RpcClient, expected: ExpectedValue
});
}

describe("Tendermint34Client", () => {
(tendermintEnabled ? describe : xdescribe)("Tendermint34Client", () => {
const { url, expected } = tendermintInstances[34];

(tendermintEnabled ? it : xit)("can connect to a given url", async () => {
it("can connect to a given url", async () => {
// http connection
{
const client = await Tendermint34Client.connect("http://" + url);
Expand All @@ -867,14 +863,13 @@ describe("Tendermint34Client", () => {
}
});

(tendermintEnabled ? describe : xdescribe)("With HttpClient", () => {
describe("With HttpClient", () => {
defaultTestSuite(() => new HttpClient("http://" + url), expected);
});

(tendermintEnabled ? describe : xdescribe)("With WebsocketClient", () => {
describe("With WebsocketClient", () => {
// don't print out WebSocket errors if marked pending
const onError = globalThis.process?.env.TENDERMINT_ENABLED ? console.error : () => 0;
const factory = (): WebsocketClient => new WebsocketClient("ws://" + url, onError);
const factory = (): WebsocketClient => new WebsocketClient("ws://" + url, console.error);
defaultTestSuite(factory, expected);
websocketTestSuite(factory, expected);
});
Expand Down
79 changes: 37 additions & 42 deletions packages/tendermint-rpc/src/tendermint37/tendermint37client.spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -253,27 +253,25 @@ function defaultTestSuite(rpcFactory: () => RpcClient, expected: ExpectedValues)

describe("blockSearch", () => {
beforeAll(async () => {
if (tendermintEnabled) {
const client = Tendermint37Client.create(rpcFactory());
const client = Tendermint37Client.create(rpcFactory());

async function sendTx(): Promise<void> {
const tx = buildKvTx(randomString(), randomString());
async function sendTx(): Promise<void> {
const tx = buildKvTx(randomString(), randomString());

const txRes = await client.broadcastTxCommit({ tx: tx });
expect(responses.broadcastTxCommitSuccess(txRes)).toEqual(true);
expect(txRes.height).toBeTruthy();
expect(txRes.hash.length).not.toEqual(0);
}
const txRes = await client.broadcastTxCommit({ tx: tx });
expect(responses.broadcastTxCommitSuccess(txRes)).toEqual(true);
expect(txRes.height).toBeTruthy();
expect(txRes.hash.length).not.toEqual(0);
}

// send 3 txs
await sendTx();
await sendTx();
await sendTx();
// send 3 txs
await sendTx();
await sendTx();
await sendTx();

client.disconnect();
client.disconnect();

await tendermintSearchIndexUpdated();
}
await tendermintSearchIndexUpdated();
});

it("can paginate over blockSearch results", async () => {
Expand Down Expand Up @@ -436,29 +434,27 @@ function defaultTestSuite(rpcFactory: () => RpcClient, expected: ExpectedValues)
let broadcast1: responses.BroadcastTxCommitResponse | undefined;

beforeAll(async () => {
if (tendermintEnabled) {
const client = Tendermint37Client.create(rpcFactory());

async function sendTx(): Promise<[Uint8Array, responses.BroadcastTxCommitResponse]> {
const me = randomString();
const tx = buildKvTx(txKey, me);

const txRes = await client.broadcastTxCommit({ tx: tx });
expect(responses.broadcastTxCommitSuccess(txRes)).toEqual(true);
expect(txRes.height).toBeTruthy();
expect(txRes.hash.length).toEqual(32);
return [tx, txRes];
}

// send 3 txs
[tx1, broadcast1] = await sendTx();
await sendTx();
await sendTx();
const client = Tendermint37Client.create(rpcFactory());

client.disconnect();
async function sendTx(): Promise<[Uint8Array, responses.BroadcastTxCommitResponse]> {
const me = randomString();
const tx = buildKvTx(txKey, me);

await tendermintSearchIndexUpdated();
const txRes = await client.broadcastTxCommit({ tx: tx });
expect(responses.broadcastTxCommitSuccess(txRes)).toEqual(true);
expect(txRes.height).toBeTruthy();
expect(txRes.hash.length).toEqual(32);
return [tx, txRes];
}

// send 3 txs
[tx1, broadcast1] = await sendTx();
await sendTx();
await sendTx();

client.disconnect();

await tendermintSearchIndexUpdated();
});

it("finds a single tx by hash", async () => {
Expand Down Expand Up @@ -848,10 +844,10 @@ function websocketTestSuite(rpcFactory: () => RpcClient, expected: ExpectedValue
});
}

describe("Tendermint37Client", () => {
(tendermintEnabled ? describe : xdescribe)("Tendermint37Client", () => {
const { url, expected } = tendermintInstances[37];

(tendermintEnabled ? it : xit)("can connect to a given url", async () => {
it("can connect to a given url", async () => {
// http connection
{
const client = await Tendermint37Client.connect("http://" + url);
Expand All @@ -869,14 +865,13 @@ describe("Tendermint37Client", () => {
}
});

(tendermintEnabled ? describe : xdescribe)("With HttpClient", () => {
describe("With HttpClient", () => {
defaultTestSuite(() => new HttpClient("http://" + url), expected);
});

(tendermintEnabled ? describe : xdescribe)("With WebsocketClient", () => {
describe("With WebsocketClient", () => {
// don't print out WebSocket errors if marked pending
const onError = globalThis.process?.env.TENDERMINT_ENABLED ? console.error : () => 0;
const factory = (): WebsocketClient => new WebsocketClient("ws://" + url, onError);
const factory = (): WebsocketClient => new WebsocketClient("ws://" + url, console.error);
defaultTestSuite(factory, expected);
websocketTestSuite(factory, expected);
});
Expand Down
Loading