UNPKG

@zkp2p/reclaim-witness-sdk

Version:

<div> <div> <img src="https://raw.githubusercontent.com/reclaimprotocol/.github/main/assets/banners/Attestor-Core.png" /> </div> </div>

64 lines 4.42 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.describeWithServer = void 0; const client_socket_1 = require("../client/utils/client-socket"); const config_1 = require("../config"); const server_1 = require("../server"); const mock_provider_server_1 = require("../tests/mock-provider-server"); const mocks_1 = require("../tests/mocks"); const utils_1 = require("../tests/utils"); const utils_2 = require("../utils"); /** * Boots up a attestor server, a mock https server, * and a client that is renewed for each test. */ const describeWithServer = (name, fn) => describe(name, () => { let wsServer; let wsServerUrl; let privateKeyHex; let client; const wsServerPort = (0, utils_1.getRandomPort)(); const httpsServerPort = (0, utils_1.getRandomPort)(); const mockHttpsServer = (0, mock_provider_server_1.createMockServer)(httpsServerPort); beforeAll(async () => { wsServer = await (0, server_1.createServer)(wsServerPort); wsServerUrl = `ws://localhost:${wsServerPort}${config_1.WS_PATHNAME}`; }); afterAll(() => { wsServer.close(); mockHttpsServer.server.close(); }); beforeEach(async () => { mocks_1.SPY_PREPARER.mockClear(); privateKeyHex = (0, utils_1.randomPrivateKey)(); client = new client_socket_1.AttestorClient({ logger: utils_2.logger.child({ client: 1 }), url: wsServerUrl, }); await client.waitForInit(); }); afterEach(async () => { await client.terminateConnection(); }); fn({ getClientOnServer, get client() { return client; }, get privateKeyHex() { return privateKeyHex; }, get serverUrl() { return wsServerUrl; }, mockHttpsServer, mockhttpsServerPort: httpsServerPort, }); function getClientOnServer() { var _a; const serverSockets = [...wsServer.clients.values()]; return (_a = serverSockets.at(-1)) === null || _a === void 0 ? void 0 : _a.serverSocket; } }); exports.describeWithServer = describeWithServer; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVzY3JpYmUtd2l0aC1zZXJ2ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdGVzdHMvZGVzY3JpYmUtd2l0aC1zZXJ2ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsa0VBQStEO0FBQy9ELHVDQUF3QztBQUN4Qyx1Q0FBeUM7QUFDekMseUVBQWlFO0FBQ2pFLDJDQUE4QztBQUM5QywyQ0FBaUU7QUFFakUscUNBQWtDO0FBZ0JsQzs7O0dBR0c7QUFDSSxNQUFNLGtCQUFrQixHQUFHLENBQ2pDLElBQVksRUFDWixFQUE4QixFQUM3QixFQUFFLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxHQUFHLEVBQUU7SUFDeEIsSUFBSSxRQUF5QixDQUFBO0lBRTdCLElBQUksV0FBbUIsQ0FBQTtJQUV2QixJQUFJLGFBQXFCLENBQUE7SUFDekIsSUFBSSxNQUFzQixDQUFBO0lBRTFCLE1BQU0sWUFBWSxHQUFHLElBQUEscUJBQWEsR0FBRSxDQUFBO0lBQ3BDLE1BQU0sZUFBZSxHQUFHLElBQUEscUJBQWEsR0FBRSxDQUFBO0lBRXZDLE1BQU0sZUFBZSxHQUFHLElBQUEsdUNBQWdCLEVBQUMsZUFBZSxDQUFDLENBQUE7SUFFekQsU0FBUyxDQUFDLEtBQUssSUFBRyxFQUFFO1FBQ25CLFFBQVEsR0FBRyxNQUFNLElBQUEscUJBQVksRUFBQyxZQUFZLENBQUMsQ0FBQTtRQUMzQyxXQUFXLEdBQUcsa0JBQWtCLFlBQVksR0FBRyxvQkFBVyxFQUFFLENBQUE7SUFDN0QsQ0FBQyxDQUFDLENBQUE7SUFFRixRQUFRLENBQUMsR0FBRyxFQUFFO1FBQ2IsUUFBUSxDQUFDLEtBQUssRUFBRSxDQUFBO1FBQ2hCLGVBQWUsQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUE7SUFDL0IsQ0FBQyxDQUFDLENBQUE7SUFFRixVQUFVLENBQUMsS0FBSyxJQUFHLEVBQUU7UUFDcEIsb0JBQVksQ0FBQyxTQUFTLEVBQUUsQ0FBQTtRQUV4QixhQUFhLEdBQUcsSUFBQSx3QkFBZ0IsR0FBRSxDQUFBO1FBQ2xDLE1BQU0sR0FBRyxJQUFJLDhCQUFjLENBQUM7WUFDM0IsTUFBTSxFQUFFLGNBQU0sQ0FBQyxLQUFLLENBQUMsRUFBRSxNQUFNLEVBQUUsQ0FBQyxFQUFFLENBQUM7WUFDbkMsR0FBRyxFQUFFLFdBQVc7U0FDaEIsQ0FBQyxDQUFBO1FBQ0YsTUFBTSxNQUFNLENBQUMsV0FBVyxFQUFFLENBQUE7SUFDM0IsQ0FBQyxDQUFDLENBQUE7SUFFRixTQUFTLENBQUMsS0FBSyxJQUFHLEVBQUU7UUFDbkIsTUFBTSxNQUFNLENBQUMsbUJBQW1CLEVBQUUsQ0FBQTtJQUNuQyxDQUFDLENBQUMsQ0FBQTtJQUVGLEVBQUUsQ0FBQztRQUNGLGlCQUFpQjtRQUNqQixJQUFJLE1BQU07WUFDVCxPQUFPLE1BQU0sQ0FBQTtRQUNkLENBQUM7UUFDRCxJQUFJLGFBQWE7WUFDaEIsT0FBTyxhQUFhLENBQUE7UUFDckIsQ0FBQztRQUNELElBQUksU0FBUztZQUNaLE9BQU8sV0FBVyxDQUFBO1FBQ25CLENBQUM7UUFDRCxlQUFlO1FBQ2YsbUJBQW1CLEVBQUUsZUFBZTtLQUNwQyxDQUFDLENBQUE7SUFFRixTQUFTLGlCQUFpQjs7UUFDekIsTUFBTSxhQUFhLEdBQUcsQ0FBQyxHQUFHLFFBQVEsQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFFLENBQWdCLENBQUE7UUFDbkUsT0FBTyxNQUFBLGFBQWEsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsMENBQUUsWUFBWSxDQUFBO0lBQzFDLENBQUM7QUFDRixDQUFDLENBQUMsQ0FBQTtBQTVEVyxRQUFBLGtCQUFrQixzQkE0RDdCIn0=