diff --git a/conn.go b/conn.go index f857110..2ac19e9 100644 --- a/conn.go +++ b/conn.go @@ -1263,3 +1263,15 @@ func FormatCloseMessage(closeCode int, text string) []byte { copy(buf[2:], text) return buf } + +var messageTypes = map[int]string{ + TextMessage: "TextMessage", + BinaryMessage: "BinaryMessage", + CloseMessage: "CloseMessage", + PingMessage: "PingMessage", + PongMessage: "PongMessage", +} + +func FormatMessageType(mt int) string { + return messageTypes[mt] +} diff --git a/conn_test.go b/conn_test.go index a3dde2d..f0c29c3 100644 --- a/conn_test.go +++ b/conn_test.go @@ -797,3 +797,20 @@ func TestFailedConnectionReadPanic(t *testing.T) { } t.Fatal("should not get here") } + +func TestFormatMessageType(t *testing.T) { + str := FormatMessageType(TextMessage) + if str != messageTypes[TextMessage] { + t.Error("failed to format message type") + } + + str = FormatMessageType(CloseMessage) + if str != messageTypes[CloseMessage] { + t.Error("failed to format message type") + } + + str = FormatMessageType(123) + if str != messageTypes[123] { + t.Error("failed to format message type") + } +}