UNPKG

@bsv/wallet-toolbox

Version:

BRC100 conforming wallet, wallet storage and wallet signer components

75 lines 3.19 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const createDefaultKnexChaintracksOptions_1 = require("../createDefaultKnexChaintracksOptions"); const Chaintracks_1 = require("../Chaintracks"); const utilityHelpers_1 = require("../../../../utility/utilityHelpers"); const createDefaultNoDbChaintracksOptions_1 = require("../createDefaultNoDbChaintracksOptions"); const ChaintracksFs_1 = require("../util/ChaintracksFs"); const LocalCdnServer_1 = require("./LocalCdnServer"); const TestUtilsWalletStorage_1 = require("../../../../../test/utils/TestUtilsWalletStorage"); const rootFolder = './src/services/chaintracker/chaintracks/__tests/data'; describe('Chaintracks tests', () => { jest.setTimeout(99999999); let logSpy, capturedLogs = []; beforeAll(async () => { logSpy = jest.spyOn(console, 'log').mockImplementation((...args) => { capturedLogs.push(args.map(String).join(' ')); }); }); test.skip('0 basic operation mainnet', async () => { const o = (0, createDefaultKnexChaintracksOptions_1.createDefaultKnexChaintracksOptions)('main', rootFolder); const c = new Chaintracks_1.Chaintracks(o); await c.makeAvailable(); let done = false; for (; !done;) { await (0, utilityHelpers_1.wait)(10000); } await c.destroy(); }); test('1 NoDb mainnet', async () => { if (TestUtilsWalletStorage_1._tu.noEnv('main')) return; await NoDbBody('main'); }); test('2 NoDb testnet', async () => { if (TestUtilsWalletStorage_1._tu.noEnv('main')) return; await NoDbBody('test'); }); test.skip('3 NoDb export mainnet', async () => { if (TestUtilsWalletStorage_1._tu.noEnv('main')) return; await NoDbBody('main', true); }); test.skip('4 NoDb export testnet', async () => { await NoDbBody('test', true); }); test.skip('5 run local CDN on port 8300', async () => { const fs = ChaintracksFs_1.ChaintracksFs; const server = new LocalCdnServer_1.LocalCdnServer(8300, fs.pathJoin(rootFolder, 'export')); await server.start(); let done = false; for (; !done;) { await (0, utilityHelpers_1.wait)(10000); } await server.stop(); }); async function NoDbBody(chain, exportHeaders) { const o = (0, createDefaultNoDbChaintracksOptions_1.createDefaultNoDbChaintracksOptions)(chain); const c = new Chaintracks_1.Chaintracks(o); await c.makeAvailable(); c.subscribeHeaders(header => { console.log(`Header received: ${header.height} ${header.hash}`); }); if (exportHeaders) { const rootFolder = './src/services/chaintracker/chaintracks/__tests/data/export'; await c.exportBulkHeaders(rootFolder, ChaintracksFs_1.ChaintracksFs, `https://cdn.projectbabbage.com/blockheaders`, 100000); } //let done = false //for (; !done; ) { await (0, utilityHelpers_1.wait)(1000); //} await c.destroy(); } }); //# sourceMappingURL=Chaintracks.test.js.map