diff options
| author | Dmitry Vyukov <dvyukov@google.com> | 2017-09-14 19:25:01 +0200 |
|---|---|---|
| committer | Dmitry Vyukov <dvyukov@google.com> | 2017-09-15 16:02:37 +0200 |
| commit | 52a33fd516102a98d3753bf69417235b655a68dc (patch) | |
| tree | 351ab73db934d3b4e4babbe27e8801c659f2631b /prog/prog_test.go | |
| parent | 25f4fe0662f7f3b390d16b2e786f2ba0aa0293f1 (diff) | |
prog: remove default target and all global state
Now each prog function accepts the desired target explicitly.
No global, implicit state involved.
This is much cleaner and allows cross-OS/arch testing, etc.
Diffstat (limited to 'prog/prog_test.go')
| -rw-r--r-- | prog/prog_test.go | 32 |
1 files changed, 16 insertions, 16 deletions
diff --git a/prog/prog_test.go b/prog/prog_test.go index 53ce959d6..e5ac2c927 100644 --- a/prog/prog_test.go +++ b/prog/prog_test.go @@ -10,27 +10,27 @@ import ( ) func TestGeneration(t *testing.T) { - rs, iters := InitTest(t) + target, rs, iters := initTest(t) for i := 0; i < iters; i++ { - Generate(rs, 20, nil) + target.Generate(rs, 20, nil) } } func TestDefault(t *testing.T) { - InitTest(t) - for _, meta := range SyscallMap { + target, _, _ := initTest(t) + for _, meta := range target.SyscallMap { for _, t := range meta.Args { - DefaultArg(t) + defaultArg(t) } } } func TestDefaultCallArgs(t *testing.T) { - InitTest(t) - for _, meta := range SyscallMap { + target, _, _ := initTest(t) + for _, meta := range target.SyscallMap { // Ensure that we can restore all arguments of all calls. prog := fmt.Sprintf("%v()", meta.Name) - p, err := Deserialize([]byte(prog)) + p, err := target.Deserialize([]byte(prog)) if err != nil { t.Fatalf("failed to restore default args in prog %q: %v", prog, err) } @@ -41,11 +41,11 @@ func TestDefaultCallArgs(t *testing.T) { } func TestSerialize(t *testing.T) { - rs, iters := InitTest(t) + target, rs, iters := initTest(t) for i := 0; i < iters; i++ { - p := Generate(rs, 10, nil) + p := target.Generate(rs, 10, nil) data := p.Serialize() - p1, err := Deserialize(data) + p1, err := target.Deserialize(data) if err != nil { t.Fatalf("failed to deserialize program: %v\n%s", err, data) } @@ -63,12 +63,12 @@ func TestSerialize(t *testing.T) { } func TestVmaType(t *testing.T) { - rs, iters := InitTest(t) - meta := SyscallMap["syz_test$vma0"] - r := newRand(rs) - pageSize := PageSize() + target, rs, iters := initTest(t) + meta := target.SyscallMap["syz_test$vma0"] + r := newRand(target, rs) + pageSize := target.PageSize for i := 0; i < iters; i++ { - s := newState(nil) + s := newState(target, nil) calls := r.generateParticularCall(s, meta) c := calls[len(calls)-1] if c.Meta.Name != "syz_test$vma0" { |
