54 lines
864 B
Go
54 lines
864 B
Go
package node
|
|
|
|
import (
|
|
"crypto/rand"
|
|
"reflect"
|
|
"testing"
|
|
)
|
|
|
|
func TestPacketSyn(t *testing.T) {
|
|
in := synPacket{
|
|
TraceID: newTraceID(),
|
|
}
|
|
rand.Read(in.SharedKey[:])
|
|
|
|
out, err := parseSynPacket(in.Marshal(make([]byte, bufferSize)))
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
|
|
if !reflect.DeepEqual(in, out) {
|
|
t.Fatal("\n", in, "\n", out)
|
|
}
|
|
}
|
|
|
|
func TestPacketSynAck(t *testing.T) {
|
|
in := synAckPacket{
|
|
TraceID: newTraceID(),
|
|
}
|
|
|
|
out, err := parseSynAckPacket(in.Marshal(make([]byte, bufferSize)))
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
|
|
if !reflect.DeepEqual(in, out) {
|
|
t.Fatal("\n", in, "\n", out)
|
|
}
|
|
}
|
|
|
|
func TestPacketAck(t *testing.T) {
|
|
in := ackPacket{
|
|
TraceID: newTraceID(),
|
|
}
|
|
|
|
out, err := parseAckPacket(in.Marshal(make([]byte, bufferSize)))
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
|
|
if !reflect.DeepEqual(in, out) {
|
|
t.Fatal("\n", in, "\n", out)
|
|
}
|
|
}
|