def test_set_urls_one(caplog):
    with caplog.at_level(logging.INFO):
        daemon = Daemon(coin, urls[0])
    assert daemon.current_url() == urls[0]
    assert len(daemon.urls) == 1
    logged_url = daemon.logged_url()
    assert logged_url == '127.0.0.1:8332/'
    assert in_caplog(caplog, f'daemon #1 at {logged_url} (current)')
def test_set_urls_two(caplog):
    with caplog.at_level(logging.INFO):
        daemon = Daemon(coin, ','.join(urls))
    assert daemon.current_url() == urls[0]
    assert len(daemon.urls) == 2
    logged_url = daemon.logged_url()
    assert logged_url == '127.0.0.1:8332/'
    assert in_caplog(caplog, f'daemon #1 at {logged_url} (current)')
    assert in_caplog(caplog, 'daemon #2 at 192.168.0.1:8332')
def test_failover_good(caplog):
    daemon = Daemon(coin, ','.join(urls))
    with caplog.at_level(logging.INFO):
        result = daemon.failover()
    assert result is True
    assert daemon.current_url() == urls[1]
    logged_url = daemon.logged_url()
    assert in_caplog(caplog, f'failing over to {logged_url}')
    # And again
    result = daemon.failover()
    assert result is True
    assert daemon.current_url() == urls[0]