mirror of
https://github.com/nspcc-dev/neo-go.git
synced 2025-05-03 23:02:27 +00:00
parent
73ef36e03e
commit
19646e0967
2 changed files with 92 additions and 6 deletions
|
@ -15,6 +15,8 @@ import (
|
|||
|
||||
"github.com/gorilla/websocket"
|
||||
"github.com/nspcc-dev/neo-go/pkg/config/netmode"
|
||||
"github.com/nspcc-dev/neo-go/pkg/core/transaction"
|
||||
"github.com/nspcc-dev/neo-go/pkg/network/payload"
|
||||
"github.com/nspcc-dev/neo-go/pkg/rpc/request"
|
||||
"github.com/nspcc-dev/neo-go/pkg/util"
|
||||
"github.com/stretchr/testify/require"
|
||||
|
@ -468,3 +470,36 @@ func TestWS_RequestAfterClose(t *testing.T) {
|
|||
require.Error(t, err)
|
||||
require.True(t, strings.Contains(err.Error(), "connection lost before registering response channel"))
|
||||
}
|
||||
|
||||
func TestWSClient_ConnClosedError(t *testing.T) {
|
||||
srv := initTestServer(t, "")
|
||||
|
||||
t.Run("standard closing", func(t *testing.T) {
|
||||
c, err := NewWS(context.TODO(), httpURLtoWS(srv.URL), Options{})
|
||||
require.NoError(t, err)
|
||||
|
||||
c.Close()
|
||||
|
||||
err = c.GetError()
|
||||
require.Error(t, err)
|
||||
require.True(t, strings.Contains(err.Error(), "use of closed network connection"))
|
||||
})
|
||||
|
||||
t.Run("malformed request", func(t *testing.T) {
|
||||
c, err := NewWS(context.TODO(), httpURLtoWS(srv.URL), Options{})
|
||||
require.NoError(t, err)
|
||||
|
||||
defaultMaxBlockSize := 262144
|
||||
_, err = c.SubmitP2PNotaryRequest(&payload.P2PNotaryRequest{
|
||||
MainTransaction: &transaction.Transaction{
|
||||
Script: make([]byte, defaultMaxBlockSize*3),
|
||||
},
|
||||
FallbackTransaction: &transaction.Transaction{},
|
||||
})
|
||||
require.Error(t, err)
|
||||
|
||||
err = c.GetError()
|
||||
require.Error(t, err)
|
||||
require.True(t, strings.Contains(err.Error(), "failed to read JSON response (timeout/connection loss/malformed response)"), err.Error())
|
||||
})
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue