package aerotun import "testing" func BenchmarkProtocolRoundTrip(b *testing.B) { a, err := newProtocol(testPSK) if err != nil { b.Fatal(err) } peer, err := newProtocol(testPSK) if err != nil { b.Fatal(err) } hello, _ := a.seal(flagHello, []byte{5, 140}, zeroSession) _, _, sender, _, err := peer.open(hello) if err != nil { b.Fatal(err) } ack, _ := peer.seal(flagAck, []byte{5, 140}, sender) _, _, sender, _, err = a.open(ack) if err != nil { b.Fatal(err) } confirm, _ := a.seal(flagConfirm, []byte{5, 140}, sender) if _, _, _, _, err = peer.open(confirm); err != nil { b.Fatal(err) } payload := make([]byte, 1200) b.SetBytes(int64(len(payload))) b.ReportAllocs() b.ResetTimer() for range b.N { packet, err := a.seal(0, payload, zeroSession) if err != nil { b.Fatal(err) } if _, _, _, _, err = peer.open(packet); err != nil { b.Fatal(err) } } }