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.ReadAllLocal(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.ReadAllLocal(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) }