Files
mtproxy_checker/internal/faketls/hello_test.go
T
Denozordec 4905c06b9b
Publish mtproxy_checker Docker image / test (push) Successful in 19s
Publish mtproxy_checker Docker image / build-and-push (push) Successful in 48s
init
2026-04-11 00:38:22 +07:00

33 lines
717 B
Go

package faketls
import (
"bytes"
"encoding/hex"
"testing"
)
func TestBuildClientHello_Size(t *testing.T) {
key, err := hex.DecodeString("5ba9cf5cf84698032e5300c864544dd0")
if err != nil || len(key) != 16 {
t.Fatalf("key: %v len %d", err, len(key))
}
domain, err := hex.DecodeString("632e6170692e73746570612e6f6e65")
if err != nil {
t.Fatal(err)
}
ch, err := BuildClientHello(key, domain)
if err != nil {
t.Fatal(err)
}
if len(ch.Record) != 517 {
t.Fatalf("record len %d", len(ch.Record))
}
if !bytes.HasPrefix(ch.Record, []byte{0x16, 0x03, 0x01}) {
t.Fatal("bad record header")
}
pl := int(ch.Record[3])<<8 | int(ch.Record[4])
if pl != 512 {
t.Fatalf("record payload len %d", pl)
}
}