package fingerprint import ( "testing" "ja4sentinel/api" ) func TestFromClientHello(t *testing.T) { tests := []struct { name string ch api.TLSClientHello wantErr bool }{ { name: "empty payload", ch: api.TLSClientHello{ Payload: []byte{}, }, wantErr: true, }, { name: "invalid payload", ch: api.TLSClientHello{ Payload: []byte{0x00, 0x01, 0x02}, }, wantErr: true, }, } for _, tt := range tests { t.Run(tt.name, func(t *testing.T) { engine := NewEngine() _, err := engine.FromClientHello(tt.ch) if (err != nil) != tt.wantErr { t.Errorf("FromClientHello() error = %v, wantErr %v", err, tt.wantErr) } }) } } func TestNewEngine(t *testing.T) { engine := NewEngine() if engine == nil { t.Error("NewEngine() returned nil") } }