github.com/Finschia/finschia-sdk@v0.48.1/codec/unknownproto/regression_test.go (about) 1 package unknownproto_test 2 3 import ( 4 "encoding/hex" 5 "io" 6 "testing" 7 8 "github.com/stretchr/testify/require" 9 10 "github.com/Finschia/finschia-sdk/simapp" 11 ) 12 13 // Issue #7739: Catch parse errors resulting from unexpected EOF in 14 // protowire.ConsumeFieldValue. Discovered from fuzzing. 15 func TestBadBytesPassedIntoDecoder(t *testing.T) { 16 data, _ := hex.DecodeString("0A9F010A9C200A2D2F6962632E636F72652E636F6E6E656374696F6E2E76312E4D7367436F6E6E656374696F584F75656E496E6974126B0A0D6962637A65726F636C69656E74120B6962637A65726F636F6E6E1A1C0A0C6962636F6E65636C69656E74120A6962636F6E65636F6E6E00002205312E302E302A283235454635364341373935313335453430393336384536444238313130463232413442453035433212080A0612040A0208011A40143342993E25DA936CDDC7BE3D8F603CA6E9661518D536D0C482E18A0154AA096E438A6B9BCADFCFC2F0D689DCCAF55B96399D67A8361B70F5DA13091E2F929") 17 cfg := simapp.MakeTestEncodingConfig() 18 decoder := cfg.TxConfig.TxDecoder() 19 tx, err := decoder(data) 20 21 // TODO: When issue https://github.com/cosmos/cosmos-sdk/issues/7846 22 // is addressed, we'll remove this .Contains check. 23 require.Contains(t, err.Error(), io.ErrUnexpectedEOF.Error()) 24 require.Nil(t, tx) 25 }