mirror of
https://github.com/netbirdio/netbird.git
synced 2024-12-14 19:00:50 +01:00
0c039274a4
This update adds new relay integration for NetBird clients. The new relay is based on web sockets and listens on a single port. - Adds new relay implementation with websocket with single port relaying mechanism - refactor peer connection logic, allowing upgrade and downgrade from/to P2P connection - peer connections are faster since it connects first to relay and then upgrades to P2P - maintains compatibility with old clients by not using the new relay - updates infrastructure scripts with new relay service
44 lines
1014 B
Go
44 lines
1014 B
Go
package messages
|
|
|
|
import (
|
|
"testing"
|
|
)
|
|
|
|
func TestMarshalHelloMsg(t *testing.T) {
|
|
peerID := []byte("abdFAaBcawquEiCMzAabYosuUaGLtSNhKxz+")
|
|
bHello, err := MarshalHelloMsg(peerID, nil)
|
|
if err != nil {
|
|
t.Fatalf("error: %v", err)
|
|
}
|
|
|
|
receivedPeerID, _, err := UnmarshalHelloMsg(bHello[SizeOfProtoHeader:])
|
|
if err != nil {
|
|
t.Fatalf("error: %v", err)
|
|
}
|
|
if string(receivedPeerID) != string(peerID) {
|
|
t.Errorf("expected %s, got %s", peerID, receivedPeerID)
|
|
}
|
|
}
|
|
|
|
func TestMarshalTransportMsg(t *testing.T) {
|
|
peerID := []byte("abdFAaBcawquEiCMzAabYosuUaGLtSNhKxz+")
|
|
payload := []byte("payload")
|
|
msg, err := MarshalTransportMsg(peerID, payload)
|
|
if err != nil {
|
|
t.Fatalf("error: %v", err)
|
|
}
|
|
|
|
id, respPayload, err := UnmarshalTransportMsg(msg[SizeOfProtoHeader:])
|
|
if err != nil {
|
|
t.Fatalf("error: %v", err)
|
|
}
|
|
|
|
if string(id) != string(peerID) {
|
|
t.Errorf("expected %s, got %s", peerID, id)
|
|
}
|
|
|
|
if string(respPayload) != string(payload) {
|
|
t.Errorf("expected %s, got %s", payload, respPayload)
|
|
}
|
|
}
|