all_test/TestThread{1,4}: Run more than once.

modified:   Makefile
	modified:   all_test.go
This commit is contained in:
Jan Mercl
2017-07-03 14:43:34 +02:00
parent 4e3524142c
commit 51c2f03f63
2 changed files with 43 additions and 39 deletions

View File

@@ -20,7 +20,7 @@ all: editor
clean: clean:
go clean go clean
rm -f *~ *.test *.out rm -f *~ *.test *.out test.db testdb-* tt4-test*.db
cover: cover:
t=$(shell tempfile) ; go test -coverprofile $$t && go tool cover -html $$t && unlink $$t t=$(shell tempfile) ; go test -coverprofile $$t && go tool cover -html $$t && unlink $$t

View File

@@ -404,42 +404,44 @@ func TestMP(t *testing.T) {
} }
func TestThread1(t *testing.T) { func TestThread1(t *testing.T) {
dir, err := ioutil.TempDir("", "sqlite-test-") for i := 0; i < 10; i++ {
if err != nil { dir, err := ioutil.TempDir("", "sqlite-test-")
t.Fatal(err)
}
defer func() {
if err := os.RemoveAll(dir); err != nil {
t.Fatal(err)
}
}()
wd, err := os.Getwd()
if err != nil {
t.Fatal(err)
}
defer func() {
if err := os.Chdir(wd); err != nil {
t.Fatal(err)
}
}()
if err := os.Chdir(dir); err != nil {
t.Fatal(err)
}
if out, err := exec.Command("go", "build", "-o", "threadtest1", "github.com/cznic/sqlite/internal/threadtest1").CombinedOutput(); err != nil {
t.Fatalf("go build mptest: %s\n%s", err, out)
}
for i := 1; i <= 10; i++ {
out, err := exec.Command("./threadtest1", strconv.Itoa(i), "-v").CombinedOutput()
t.Logf("%v: %s", i, out)
if err != nil { if err != nil {
t.Fatal(err) t.Fatal(err)
} }
defer func() {
if err := os.RemoveAll(dir); err != nil {
t.Fatal(err)
}
}()
wd, err := os.Getwd()
if err != nil {
t.Fatal(err)
}
defer func() {
if err := os.Chdir(wd); err != nil {
t.Fatal(err)
}
}()
if err := os.Chdir(dir); err != nil {
t.Fatal(err)
}
if out, err := exec.Command("go", "build", "-o", "threadtest1", "github.com/cznic/sqlite/internal/threadtest1").CombinedOutput(); err != nil {
t.Fatalf("go build mptest: %s\n%s", err, out)
}
for j := 0; j <= 20; j++ {
out, err := exec.Command("./threadtest1", strconv.Itoa(j), "-v").CombinedOutput()
t.Logf("%v, %v: %s", i, j, out)
if err != nil {
t.Fatal(err)
}
}
} }
} }
@@ -514,15 +516,17 @@ func TestThread4(t *testing.T) {
for _, opts := range [][]string{ for _, opts := range [][]string{
{}, {},
{"-serialized", "-wal"},
{"-serialized"},
{"-multithread"},
{"-multithread", "-wal"},
{"-wal"}, {"-wal"},
{"-serialized"},
{"-serialized", "-wal"},
{"--multithread"},
{"--multithread", "-wal"},
{"--multithread", "-serialized"},
{"--multithread", "-serialized", "-wal"},
} { } {
for i := 2; i <= 10; i++ { for i := 2; i <= 10; i++ {
out, err := exec.Command("./threadtest4", append(opts, strconv.Itoa(i))...).CombinedOutput() out, err := exec.Command("./threadtest4", append(opts, strconv.Itoa(i))...).CombinedOutput()
t.Logf("%v: %s", i, out) t.Logf("%v: %v %s", i, opts, out)
if err != nil { if err != nil {
t.Fatal(err) t.Fatal(err)
} }