From e43d8264fde67d110c185693a77e77d07d5e9b18 Mon Sep 17 00:00:00 2001 From: Muzzammil Shahid Date: Wed, 13 Nov 2024 19:54:53 +0500 Subject: [PATCH] Add Arguments and KwArguments in Error string (#63) --- types.go | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) diff --git a/types.go b/types.go index 434027c..2e083c0 100644 --- a/types.go +++ b/types.go @@ -2,8 +2,10 @@ package xconn import ( "context" + "fmt" "io" "net" + "strings" "time" "github.com/xconnio/wampproto-go/messages" @@ -147,7 +149,24 @@ type Error struct { } func (e *Error) Error() string { - return e.URI + errStr := e.URI + if e.Arguments != nil { + args := make([]string, len(e.Arguments)) + for i, arg := range e.Arguments { + args[i] = fmt.Sprintf("%v", arg) + } + errStr += ": " + strings.Join(args, ", ") + } + + if e.KwArguments != nil { + kwargs := make([]string, len(e.KwArguments)) + for key, value := range e.KwArguments { + kwargs = append(kwargs, fmt.Sprintf("%s=%v", key, value)) + } + errStr += ": " + strings.Join(kwargs, ", ") + } + + return errStr } type RegisterResponse struct {