github.com/QuangHoangHao/kafka-go@v0.4.36/protocol/response_test.go (about) 1 package protocol 2 3 import ( 4 "bytes" 5 "errors" 6 "io" 7 "strings" 8 "testing" 9 ) 10 11 func TestReadResponseUnexpectedTLSDetection(t *testing.T) { 12 var buf bytes.Buffer 13 14 buf.Write([]byte{tlsAlertByte, 0x03, 0x03, 10, 0, 0, 0}) 15 16 correlationID, _, err := ReadResponse(&buf, ApiVersions, 0) 17 if !errors.Is(err, io.ErrUnexpectedEOF) { 18 t.Fatalf("expected an io.ErrUnexpectedEOF from ReadResponse got %v", err) 19 } 20 21 if !strings.Contains(err.Error(), "broker appears to be expecting TLS") { 22 t.Fatalf("expected error messae to contain %s got %s", "broker appears to be expecting TLS", err.Error()) 23 } 24 25 if correlationID != 0 { 26 t.Fatalf("expected correlationID of 0 got %d", correlationID) 27 } 28 }