Merge pull request #9355 from Roasbeef/rapid-fuzz-htlc-blobs

contractcourt: add rapid derived fuzz test for HtlcAuxBlob
This commit is contained in:
Oliver Gugger authored and GitHub committed 2025-01-13 10:35:53 -06:00
commit b958667811
1 file changed
+17 -7
+17 -7
View File
@@ -127,12 +127,9 @@ func TestTaprootBriefcase(t *testing.T) {
require.Equal(t, testCase, &decodedCase) require.Equal(t, testCase, &decodedCase)
} }
// TestHtlcAuxBlobEncodeDecode tests the encode/decode methods of the HTLC aux // testHtlcAuxBlobProperties is a rapid property that verifies the encoding and
// blobs. // decoding of the HTLC aux blobs.
func TestHtlcAuxBlobEncodeDecode(t *testing.T) { func testHtlcAuxBlobProperties(t *rapid.T) {
t.Parallel()
rapid.Check(t, func(t *rapid.T) {
htlcBlobs := rapid.Make[htlcAuxBlobs]().Draw(t, "htlcAuxBlobs") htlcBlobs := rapid.Make[htlcAuxBlobs]().Draw(t, "htlcAuxBlobs")
var b bytes.Buffer var b bytes.Buffer
@@ -142,5 +139,18 @@ func TestHtlcAuxBlobEncodeDecode(t *testing.T) {
require.NoError(t, decodedBlobs.Decode(&b)) require.NoError(t, decodedBlobs.Decode(&b))
require.Equal(t, htlcBlobs, decodedBlobs) require.Equal(t, htlcBlobs, decodedBlobs)
}) }
// TestHtlcAuxBlobEncodeDecode tests the encode/decode methods of the HTLC aux
// blobs.
func TestHtlcAuxBlobEncodeDecode(t *testing.T) {
t.Parallel()
rapid.Check(t, testHtlcAuxBlobProperties)
}
// FuzzHtlcAuxBlobEncodeDecodeFuzz tests the encode/decode methods of the HTLC
// aux blobs using the rapid derived fuzzer.
func FuzzHtlcAuxBlobEncodeDecode(f *testing.F) {
f.Fuzz(rapid.MakeFuzz(testHtlcAuxBlobProperties))
} }