fix bug when set indexer as db and add tests (#6173)

This commit is contained in:
Lunny Xiao 2019-02-25 00:16:20 +08:00 committed by techknowlogick
parent 05143768d0
commit 15ecc08475
3 changed files with 30 additions and 3 deletions

View file

@ -11,7 +11,7 @@ import (
"github.com/stretchr/testify/assert"
)
func TestIndexAndSearch(t *testing.T) {
func TestBleveIndexAndSearch(t *testing.T) {
dir := "./bleve.index"
indexer := NewBleveIndexer(dir)
defer os.RemoveAll(dir)

View file

@ -72,6 +72,7 @@ func InitIssueIndexer(syncReindex bool) error {
}
if dummyQueue {
issueIndexerUpdateQueue = &DummyQueue{}
return nil
}

View file

@ -26,16 +26,42 @@ func TestMain(m *testing.M) {
models.MainTest(m, filepath.Join("..", "..", ".."))
}
func TestSearchIssues(t *testing.T) {
func TestBleveSearchIssues(t *testing.T) {
assert.NoError(t, models.PrepareTestDatabase())
os.RemoveAll(setting.Indexer.IssueIndexerQueueDir)
os.RemoveAll(setting.Indexer.IssuePath)
setting.Indexer.IssueType = "bleve"
if err := InitIssueIndexer(true); err != nil {
fatalTestError("Error InitIssueIndexer: %v\n", err)
}
time.Sleep(10 * time.Second)
time.Sleep(5 * time.Second)
ids, err := SearchIssuesByKeyword(1, "issue2")
assert.NoError(t, err)
assert.EqualValues(t, []int64{2}, ids)
ids, err = SearchIssuesByKeyword(1, "first")
assert.NoError(t, err)
assert.EqualValues(t, []int64{1}, ids)
ids, err = SearchIssuesByKeyword(1, "for")
assert.NoError(t, err)
assert.EqualValues(t, []int64{1, 2, 3, 5}, ids)
ids, err = SearchIssuesByKeyword(1, "good")
assert.NoError(t, err)
assert.EqualValues(t, []int64{1}, ids)
}
func TestDBSearchIssues(t *testing.T) {
assert.NoError(t, models.PrepareTestDatabase())
setting.Indexer.IssueType = "db"
if err := InitIssueIndexer(true); err != nil {
fatalTestError("Error InitIssueIndexer: %v\n", err)
}
ids, err := SearchIssuesByKeyword(1, "issue2")
assert.NoError(t, err)