1package tests
2
3import (
4 "testing"
5
6 "github.com/MichaelMure/git-bug/bug"
7 "github.com/MichaelMure/git-bug/misc/random_bugs"
8 "github.com/MichaelMure/git-bug/repository"
9)
10
11func TestReadBugs(t *testing.T) {
12 repo := repository.CreateGoGitTestRepo(false)
13 defer repository.CleanupTestRepos(repo)
14
15 random_bugs.FillRepoWithSeed(repo, 15, 42)
16
17 bugs := bug.ReadAllLocalBugs(repo)
18 for b := range bugs {
19 if b.Err != nil {
20 t.Fatal(b.Err)
21 }
22 }
23}
24
25func benchmarkReadBugs(bugNumber int, t *testing.B) {
26 repo := repository.CreateGoGitTestRepo(false)
27 defer repository.CleanupTestRepos(repo)
28
29 random_bugs.FillRepoWithSeed(repo, bugNumber, 42)
30 t.ResetTimer()
31
32 for n := 0; n < t.N; n++ {
33 bugs := bug.ReadAllLocalBugs(repo)
34 for b := range bugs {
35 if b.Err != nil {
36 t.Fatal(b.Err)
37 }
38 }
39 }
40}
41
42func BenchmarkReadBugs5(b *testing.B) { benchmarkReadBugs(5, b) }
43func BenchmarkReadBugs25(b *testing.B) { benchmarkReadBugs(25, b) }
44func BenchmarkReadBugs150(b *testing.B) { benchmarkReadBugs(150, b) }