diff --git a/transaction_test.go b/transaction_test.go index afe09afc..3f6f640c 100644 --- a/transaction_test.go +++ b/transaction_test.go @@ -189,6 +189,19 @@ func TestSignTransaction(t *testing.T) { }) } +func FuzzTransaction(f *testing.F) { + encoded := "AfjEs3XhTc3hrxEvlnMPkm/cocvAUbFNbCl00qKnrFue6J53AhEqIFmcJJlJW3EDP5RmcMz+cNTTcZHW/WJYwAcBAAEDO8hh4VddzfcO5jbCt95jryl6y8ff65UcgukHNLWH+UQGgxCGGpgyfQVQV02EQYqm4QwzUt2qf9f1gVLM7rI4hwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA6ANIF55zOZWROWRkeh+lExxZBnKFqbvIxZDLE7EijjoBAgIAAQwCAAAAOTAAAAAAAAA=" + data, err := base64.StdEncoding.DecodeString(encoded) + require.NoError(f, err) + f.Add(data) + + f.Fuzz(func(t *testing.T, data []byte) { + require.NotPanics(t, func() { + TransactionFromDecoder(bin.NewBinDecoder(data)) + }) + }) +} + func TestTransactionDecode(t *testing.T) { encoded := "AfjEs3XhTc3hrxEvlnMPkm/cocvAUbFNbCl00qKnrFue6J53AhEqIFmcJJlJW3EDP5RmcMz+cNTTcZHW/WJYwAcBAAEDO8hh4VddzfcO5jbCt95jryl6y8ff65UcgukHNLWH+UQGgxCGGpgyfQVQV02EQYqm4QwzUt2qf9f1gVLM7rI4hwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA6ANIF55zOZWROWRkeh+lExxZBnKFqbvIxZDLE7EijjoBAgIAAQwCAAAAOTAAAAAAAAA=" data, err := base64.StdEncoding.DecodeString(encoded)