diff options
author | Michael Muré <batolettre@gmail.com> | 2018-08-19 21:27:10 +0200 |
---|---|---|
committer | Michael Muré <batolettre@gmail.com> | 2018-08-19 21:27:10 +0200 |
commit | 8575abf285d1dd71990b619fbdf3cd44dbc48e75 (patch) | |
tree | e72375b9be4c4f9fa06e6301e560e9693c36e7e7 | |
parent | 285e8394861765757a057ca1e16c36c9ca8227cb (diff) | |
download | git-bug-8575abf285d1dd71990b619fbdf3cd44dbc48e75.tar.gz |
bug: add a benchmark for reading all bugs in a repo
-rw-r--r-- | tests/read_bugs_test.go | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/tests/read_bugs_test.go b/tests/read_bugs_test.go new file mode 100644 index 00000000..e0f708a5 --- /dev/null +++ b/tests/read_bugs_test.go @@ -0,0 +1,49 @@ +package tests + +import ( + "testing" + + "github.com/MichaelMure/git-bug/bug" + "github.com/MichaelMure/git-bug/misc/random_bugs" + "github.com/MichaelMure/git-bug/repository" +) + +func createFilledRepo(bugNumber int) repository.Repo { + repo := createRepo(false) + + var seed int64 = 42 + options := random_bugs.DefaultOptions() + + options.BugNumber = bugNumber + + random_bugs.GenerateRandomBugsWithSeed(repo, options, seed) + return repo +} + +func TestReadBugs(t *testing.T) { + repo := createFilledRepo(15) + bugs := bug.ReadAllLocalBugs(repo) + for b := range bugs { + if b.Err != nil { + t.Fatal(b.Err) + } + } +} + +func benchmarkReadBugs(bugNumber int, t *testing.B) { + repo := createFilledRepo(bugNumber) + t.ResetTimer() + + for n := 0; n < t.N; n++ { + bugs := bug.ReadAllLocalBugs(repo) + for b := range bugs { + if b.Err != nil { + t.Fatal(b.Err) + } + } + } +} + +func BenchmarkReadBugs5(b *testing.B) { benchmarkReadBugs(5, b) } +func BenchmarkReadBugs25(b *testing.B) { benchmarkReadBugs(25, b) } +func BenchmarkReadBugs150(b *testing.B) { benchmarkReadBugs(150, b) } |