mirror of
https://codeberg.org/forgejo/forgejo.git
synced 2024-11-28 12:16:17 +01:00
Stop various tests from adding to the source tree (#9515)
Instead of just adding test generated files to .gitignore prevent them from being produced in the first place. Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
This commit is contained in:
parent
884173232f
commit
55cd33e124
6 changed files with 92 additions and 14 deletions
2
.gitignore
vendored
2
.gitignore
vendored
|
@ -66,8 +66,6 @@ coverage.all
|
||||||
/integrations/pgsql.ini
|
/integrations/pgsql.ini
|
||||||
/integrations/mssql.ini
|
/integrations/mssql.ini
|
||||||
/node_modules
|
/node_modules
|
||||||
/modules/indexer/issues/indexers
|
|
||||||
routers/repo/authorized_keys
|
|
||||||
/yarn.lock
|
/yarn.lock
|
||||||
/public/js
|
/public/js
|
||||||
/public/css
|
/public/css
|
||||||
|
|
|
@ -5,12 +5,12 @@
|
||||||
package code
|
package code
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
"io/ioutil"
|
||||||
"os"
|
"os"
|
||||||
"path/filepath"
|
"path/filepath"
|
||||||
"testing"
|
"testing"
|
||||||
|
|
||||||
"code.gitea.io/gitea/models"
|
"code.gitea.io/gitea/models"
|
||||||
"code.gitea.io/gitea/modules/log"
|
|
||||||
"code.gitea.io/gitea/modules/setting"
|
"code.gitea.io/gitea/modules/setting"
|
||||||
|
|
||||||
"github.com/stretchr/testify/assert"
|
"github.com/stretchr/testify/assert"
|
||||||
|
@ -23,15 +23,24 @@ func TestMain(m *testing.M) {
|
||||||
func TestIndexAndSearch(t *testing.T) {
|
func TestIndexAndSearch(t *testing.T) {
|
||||||
models.PrepareTestEnv(t)
|
models.PrepareTestEnv(t)
|
||||||
|
|
||||||
dir := "./bleve.index"
|
dir, err := ioutil.TempDir("", "bleve.index")
|
||||||
os.RemoveAll(dir)
|
assert.NoError(t, err)
|
||||||
|
if err != nil {
|
||||||
|
assert.Fail(t, "Unable to create temporary directory")
|
||||||
|
return
|
||||||
|
}
|
||||||
|
defer os.RemoveAll(dir)
|
||||||
|
|
||||||
setting.Indexer.RepoIndexerEnabled = true
|
setting.Indexer.RepoIndexerEnabled = true
|
||||||
idx, _, err := NewBleveIndexer(dir)
|
idx, _, err := NewBleveIndexer(dir)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
idx.Close()
|
assert.Fail(t, "Unable to create indexer Error: %v", err)
|
||||||
log.Fatal("indexer.Init: %v", err)
|
if idx != nil {
|
||||||
|
idx.Close()
|
||||||
|
}
|
||||||
|
return
|
||||||
}
|
}
|
||||||
|
defer idx.Close()
|
||||||
|
|
||||||
err = idx.Index(1)
|
err = idx.Index(1)
|
||||||
assert.NoError(t, err)
|
assert.NoError(t, err)
|
||||||
|
|
|
@ -9,6 +9,7 @@ import (
|
||||||
"os"
|
"os"
|
||||||
"strconv"
|
"strconv"
|
||||||
|
|
||||||
|
"code.gitea.io/gitea/modules/log"
|
||||||
"github.com/blevesearch/bleve"
|
"github.com/blevesearch/bleve"
|
||||||
"github.com/blevesearch/bleve/analysis/analyzer/custom"
|
"github.com/blevesearch/bleve/analysis/analyzer/custom"
|
||||||
"github.com/blevesearch/bleve/analysis/token/lowercase"
|
"github.com/blevesearch/bleve/analysis/token/lowercase"
|
||||||
|
@ -184,6 +185,15 @@ func (b *BleveIndexer) Init() (bool, error) {
|
||||||
return false, err
|
return false, err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Close will close the bleve indexer
|
||||||
|
func (b *BleveIndexer) Close() {
|
||||||
|
if b.indexer != nil {
|
||||||
|
if err := b.indexer.Close(); err != nil {
|
||||||
|
log.Error("Error whilst closing indexer: %v", err)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// Index will save the index data
|
// Index will save the index data
|
||||||
func (b *BleveIndexer) Index(issues []*IndexerData) error {
|
func (b *BleveIndexer) Index(issues []*IndexerData) error {
|
||||||
batch := rupture.NewFlushingBatch(b.indexer, maxBatchSize)
|
batch := rupture.NewFlushingBatch(b.indexer, maxBatchSize)
|
||||||
|
|
|
@ -5,6 +5,7 @@
|
||||||
package issues
|
package issues
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
"io/ioutil"
|
||||||
"os"
|
"os"
|
||||||
"testing"
|
"testing"
|
||||||
|
|
||||||
|
@ -12,12 +13,20 @@ import (
|
||||||
)
|
)
|
||||||
|
|
||||||
func TestBleveIndexAndSearch(t *testing.T) {
|
func TestBleveIndexAndSearch(t *testing.T) {
|
||||||
dir := "./bleve.index"
|
dir, err := ioutil.TempDir("", "bleve.index")
|
||||||
indexer := NewBleveIndexer(dir)
|
|
||||||
defer os.RemoveAll(dir)
|
|
||||||
|
|
||||||
_, err := indexer.Init()
|
|
||||||
assert.NoError(t, err)
|
assert.NoError(t, err)
|
||||||
|
if err != nil {
|
||||||
|
assert.Fail(t, "Unable to create temporary directory")
|
||||||
|
return
|
||||||
|
}
|
||||||
|
defer os.RemoveAll(dir)
|
||||||
|
indexer := NewBleveIndexer(dir)
|
||||||
|
defer indexer.Close()
|
||||||
|
|
||||||
|
if _, err := indexer.Init(); err != nil {
|
||||||
|
assert.Fail(t, "Unable to initialise bleve indexer: %v", err)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
err = indexer.Index([]*IndexerData{
|
err = indexer.Index([]*IndexerData{
|
||||||
{
|
{
|
||||||
|
|
|
@ -5,7 +5,9 @@
|
||||||
package issues
|
package issues
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
"io/ioutil"
|
||||||
"os"
|
"os"
|
||||||
|
"path"
|
||||||
"path/filepath"
|
"path/filepath"
|
||||||
"testing"
|
"testing"
|
||||||
"time"
|
"time"
|
||||||
|
@ -23,10 +25,29 @@ func TestMain(m *testing.M) {
|
||||||
func TestBleveSearchIssues(t *testing.T) {
|
func TestBleveSearchIssues(t *testing.T) {
|
||||||
assert.NoError(t, models.PrepareTestDatabase())
|
assert.NoError(t, models.PrepareTestDatabase())
|
||||||
|
|
||||||
os.RemoveAll(setting.Indexer.IssueQueueDir)
|
tmpIndexerDir, err := ioutil.TempDir("", "issues-indexer")
|
||||||
os.RemoveAll(setting.Indexer.IssuePath)
|
if err != nil {
|
||||||
|
assert.Fail(t, "Unable to create temporary directory: %v", err)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
oldQueueDir := setting.Indexer.IssueQueueDir
|
||||||
|
oldIssuePath := setting.Indexer.IssuePath
|
||||||
|
setting.Indexer.IssueQueueDir = path.Join(tmpIndexerDir, "issues.queue")
|
||||||
|
setting.Indexer.IssuePath = path.Join(tmpIndexerDir, "issues.queue")
|
||||||
|
defer func() {
|
||||||
|
setting.Indexer.IssueQueueDir = oldQueueDir
|
||||||
|
setting.Indexer.IssuePath = oldIssuePath
|
||||||
|
os.RemoveAll(tmpIndexerDir)
|
||||||
|
}()
|
||||||
|
|
||||||
setting.Indexer.IssueType = "bleve"
|
setting.Indexer.IssueType = "bleve"
|
||||||
InitIssueIndexer(true)
|
InitIssueIndexer(true)
|
||||||
|
defer func() {
|
||||||
|
indexer := holder.get()
|
||||||
|
if bleveIndexer, ok := indexer.(*BleveIndexer); ok {
|
||||||
|
bleveIndexer.Close()
|
||||||
|
}
|
||||||
|
}()
|
||||||
|
|
||||||
time.Sleep(5 * time.Second)
|
time.Sleep(5 * time.Second)
|
||||||
|
|
||||||
|
@ -45,6 +66,7 @@ func TestBleveSearchIssues(t *testing.T) {
|
||||||
ids, err = SearchIssuesByKeyword([]int64{1}, "good")
|
ids, err = SearchIssuesByKeyword([]int64{1}, "good")
|
||||||
assert.NoError(t, err)
|
assert.NoError(t, err)
|
||||||
assert.EqualValues(t, []int64{1}, ids)
|
assert.EqualValues(t, []int64{1}, ids)
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func TestDBSearchIssues(t *testing.T) {
|
func TestDBSearchIssues(t *testing.T) {
|
||||||
|
|
|
@ -5,18 +5,42 @@
|
||||||
package repo
|
package repo
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
"io/ioutil"
|
||||||
"net/http"
|
"net/http"
|
||||||
|
"os"
|
||||||
"testing"
|
"testing"
|
||||||
|
|
||||||
"code.gitea.io/gitea/models"
|
"code.gitea.io/gitea/models"
|
||||||
"code.gitea.io/gitea/modules/auth"
|
"code.gitea.io/gitea/modules/auth"
|
||||||
"code.gitea.io/gitea/modules/context"
|
"code.gitea.io/gitea/modules/context"
|
||||||
|
"code.gitea.io/gitea/modules/setting"
|
||||||
"code.gitea.io/gitea/modules/test"
|
"code.gitea.io/gitea/modules/test"
|
||||||
|
|
||||||
"github.com/stretchr/testify/assert"
|
"github.com/stretchr/testify/assert"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
func createSSHAuthorizedKeysTmpPath(t *testing.T) func() {
|
||||||
|
tmpDir, err := ioutil.TempDir("", "tmp-ssh")
|
||||||
|
if err != nil {
|
||||||
|
assert.Fail(t, "Unable to create temporary directory: %v", err)
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
oldPath := setting.SSH.RootPath
|
||||||
|
setting.SSH.RootPath = tmpDir
|
||||||
|
|
||||||
|
return func() {
|
||||||
|
setting.SSH.RootPath = oldPath
|
||||||
|
os.RemoveAll(tmpDir)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
func TestAddReadOnlyDeployKey(t *testing.T) {
|
func TestAddReadOnlyDeployKey(t *testing.T) {
|
||||||
|
if deferable := createSSHAuthorizedKeysTmpPath(t); deferable != nil {
|
||||||
|
defer deferable()
|
||||||
|
} else {
|
||||||
|
return
|
||||||
|
}
|
||||||
models.PrepareTestEnv(t)
|
models.PrepareTestEnv(t)
|
||||||
|
|
||||||
ctx := test.MockContext(t, "user2/repo1/settings/keys")
|
ctx := test.MockContext(t, "user2/repo1/settings/keys")
|
||||||
|
@ -39,6 +63,12 @@ func TestAddReadOnlyDeployKey(t *testing.T) {
|
||||||
}
|
}
|
||||||
|
|
||||||
func TestAddReadWriteOnlyDeployKey(t *testing.T) {
|
func TestAddReadWriteOnlyDeployKey(t *testing.T) {
|
||||||
|
if deferable := createSSHAuthorizedKeysTmpPath(t); deferable != nil {
|
||||||
|
defer deferable()
|
||||||
|
} else {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
models.PrepareTestEnv(t)
|
models.PrepareTestEnv(t)
|
||||||
|
|
||||||
ctx := test.MockContext(t, "user2/repo1/settings/keys")
|
ctx := test.MockContext(t, "user2/repo1/settings/keys")
|
||||||
|
|
Loading…
Reference in a new issue