github.com/google/syzkaller@v0.0.0-20240517125934-c0f1611a36d6/prog/test/fuzz_test.go (about)

     1  // Copyright 2019 syzkaller project authors. All rights reserved.
     2  // Use of this source code is governed by Apache 2 LICENSE that can be found in the LICENSE file.
     3  
     4  package test
     5  
     6  import (
     7  	"testing"
     8  )
     9  
    10  func TestFuzz(t *testing.T) {
    11  	for i, data := range []string{
    12  		`test$length10(&200000000000009`,
    13  		`test$str0(&(0x7f0000000000)='\xz+')`,
    14  		`syz_compare(&AUTO=""/81546506777")`,
    15  		`syz_compare(&AUTO=""/190734863281259)`,
    16  		`syz_compare(&AUTO=""/500000)`,
    17  		`test$vma0(&(0x7f0000000000)=0)`,
    18  		`test$vma0(&(0x7f0000000000)=')`,
    19  		`test$length10(&(0x7f0000009000),AUTO)`,
    20  		`syz_compare(&AUTO=""/2712404)
    21  mutate4()
    22  mutate7()
    23  mutate8()
    24  `,
    25  		`E`,
    26  		`
    27  test$str0(&(0x7f0000ffffd5)=ANY=[0])
    28  test$res2()
    29  test$res2()
    30  test$res2()
    31  test$res2()
    32  `,
    33  		`r=test$res0()
    34  test$recur2(&(293324893027559)={r})
    35  `,
    36  	} {
    37  		t.Logf("test #%v: %q", i, data)
    38  		inp := []byte(data)[:len(data):len(data)]
    39  		FuzzDeserialize(inp)
    40  		FuzzParseLog(inp)
    41  	}
    42  }