use crate::{Ledger, TransportTcp};
use lwk_containers::testcontainers::{clients::Cli, Container};
use lwk_containers::{LedgerEmulator, LEDGER_EMULATOR_PORT};
pub struct TestLedgerEmulator<'a> {
pub ledger: Ledger<TransportTcp>,
_ledger_emul: Container<'a, LedgerEmulator>,
}
impl<'a> TestLedgerEmulator<'a> {
pub fn new(docker: &'a Cli) -> Self {
let ledger = LedgerEmulator::new().expect("test");
let container = docker.run(ledger);
let port = container.get_host_port_ipv4(LEDGER_EMULATOR_PORT);
let ledger = Ledger::new(port);
Self {
ledger,
_ledger_emul: container,
}
}
}