[Chronik] Add failover.ts integration test to chronik-client
Summary:
We spin up 3 nodes using Python, and then stop them 1 by 1 to test the failover works.
We check to make sure the failover is working by:
Connect to a new node after we force current node to stop.
Assert that the node is indeed stopped.
Mine a block on new node, ensure we still receive subscription updates.
Call blockchain.info() on the node.
Test Plan:
cd modules/chronik-client/test
npx mocha -j1 -r ts-node/register test/integration/failover.ts
Reviewers: O1 Bitcoin ABC, #bitcoin_abc, Fabien
Reviewed By: O1 Bitcoin ABC, #bitcoin_abc, Fabien
Subscribers: Fabien
Differential Revision: https://reviews.bitcoinabc.org/D18264