package testclient import ( "net" "ripple/tests/internal/testclient/udpr" ) type Client struct { conn *udpr.UDPRClient transport *clientTransport } func NewClient(addrString string, secretKey [32]byte) *Client { serverAddr, err := net.ResolveUDPAddr("udp", addrString) if err != nil { panic(err) } conn, err := udpr.DialUDPR("udp", nil, serverAddr) if err != nil { panic(err) } return &Client{conn: conn, transport: newClientTransport(conn, secretKey)} } func (c *Client) Close() { c.conn.Close() } func (c *Client) SendRequest(req UserRequest) (byte, []byte, error) { c.transport.send(req) return c.transport.receive(req.Counter) }