import io
import sys

import pytest

from ibd import *

addrs = [
    b"\x02>\xbbo[\r\x00\x00\x00\x00\x00\x00\x00 \x02\x05\xf9\x98e\x00\x00\x00\x00\x00\x00\x05\xf9\x98e \x8d\r\xbdo[\r\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xb0f\xc0\x14 \x8d",
    b"\x01\x1d\xbdo[\r\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xffh\xc6[S \x8d",
    b"\x01+\xb9k[\r\x04\x00\x00\x00\x00\x00\x00*\x02\x05xO\x07\x00$v\xad\xce\xf7\x93\xc1\xb9\xb9 \x8d",
    b"\x01\xfa\xbco[\r\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xffr\xea\x03l \x8d",
]

bad_addr_msg = b"\x01\xfa\xc2o[\r\x04\x00\x00\x00\x00\x00\x00*\x02\x05xO\x07\x00$U\xdc\xa1\xaa\x88\xa5\x0fS \x8d"


def test_bad_addr():
    stream = io.BytesIO(bad_addr_msg)

    count = read_var_int(stream)
    assert count == 1

    time_b = stream.read(4)
    services_b = stream.read(4)
    ip_b = stream.read(16)
    port_b = stream.read(2)

    print(time_b)
    print(services_b)
    print(ip_b)
    print(port_b)
