mirror of
https://github.com/trezor/trezor-suite.git
synced 2026-03-06 23:39:38 +01:00
42 lines
1.3 KiB
TypeScript
42 lines
1.3 KiB
TypeScript
import { BackendWebsocketServerMock } from '@trezor/e2e-utils';
|
|
|
|
import workers from './worker';
|
|
import BlockchainLink from '../../src';
|
|
import fixtures from './fixtures/getBlockHash';
|
|
|
|
workers.forEach(instance => {
|
|
describe(`getBlockHash: ${instance.name}`, () => {
|
|
let server: BackendWebsocketServerMock;
|
|
let blockchain: BlockchainLink;
|
|
|
|
const setup = async () => {
|
|
server = await BackendWebsocketServerMock.create(instance.name);
|
|
blockchain = new BlockchainLink({
|
|
...instance,
|
|
server: [`ws://localhost:${server.options.port}`],
|
|
debug: false,
|
|
});
|
|
};
|
|
|
|
const teardown = async () => {
|
|
await blockchain.disconnect();
|
|
blockchain.dispose();
|
|
await server.close();
|
|
};
|
|
beforeAll(setup);
|
|
afterAll(teardown);
|
|
|
|
fixtures[instance.name].forEach(f => {
|
|
it(f.description, async () => {
|
|
server.setFixtures(f.serverFixtures);
|
|
const promise = blockchain.getBlockHash(f.params);
|
|
if (!f.error) {
|
|
expect(await promise).toEqual(f.response);
|
|
} else {
|
|
await expect(promise).rejects.toThrow(f.error);
|
|
}
|
|
});
|
|
});
|
|
});
|
|
});
|