mirror of
https://codeberg.org/forgejo/forgejo.git
synced 2024-10-31 22:58:59 +01:00
[TESTS] add log.Level to test.NewLogChecker
So the caller can check log events at the desired level instead of being limited to the default level log.INFO
This commit is contained in:
parent
a77d26ac2a
commit
2fbf5f9555
4 changed files with 22 additions and 7 deletions
|
@ -91,7 +91,7 @@ func TestPrimaryKeys(t *testing.T) {
|
|||
}
|
||||
|
||||
func TestSlowQuery(t *testing.T) {
|
||||
lc, cleanup := test.NewLogChecker("slow-query")
|
||||
lc, cleanup := test.NewLogChecker("slow-query", log.INFO)
|
||||
lc.StopMark("[Slow SQL Query]")
|
||||
defer cleanup()
|
||||
|
||||
|
@ -125,7 +125,7 @@ func TestSlowQuery(t *testing.T) {
|
|||
}
|
||||
|
||||
func TestErrorQuery(t *testing.T) {
|
||||
lc, cleanup := test.NewLogChecker("error-query")
|
||||
lc, cleanup := test.NewLogChecker("error-query", log.INFO)
|
||||
lc.StopMark("[Error SQL Query]")
|
||||
defer cleanup()
|
||||
|
||||
|
|
|
@ -55,13 +55,15 @@ func (lc *LogChecker) checkLogEvent(event *log.EventFormatted) {
|
|||
|
||||
var checkerIndex int64
|
||||
|
||||
func NewLogChecker(namePrefix string) (logChecker *LogChecker, cancel func()) {
|
||||
func NewLogChecker(namePrefix string, level log.Level) (logChecker *LogChecker, cancel func()) {
|
||||
logger := log.GetManager().GetLogger(namePrefix)
|
||||
newCheckerIndex := atomic.AddInt64(&checkerIndex, 1)
|
||||
writerName := namePrefix + "-" + fmt.Sprint(newCheckerIndex)
|
||||
|
||||
lc := &LogChecker{}
|
||||
lc.EventWriterBaseImpl = log.NewEventWriterBase(writerName, "test-log-checker", log.WriterMode{})
|
||||
lc.EventWriterBaseImpl = log.NewEventWriterBase(writerName, "test-log-checker", log.WriterMode{
|
||||
Level: level,
|
||||
})
|
||||
logger.AddWriters(lc)
|
||||
return lc, func() { _ = logger.RemoveWriter(writerName) }
|
||||
}
|
||||
|
|
|
@ -12,8 +12,8 @@ import (
|
|||
"github.com/stretchr/testify/assert"
|
||||
)
|
||||
|
||||
func TestLogChecker(t *testing.T) {
|
||||
lc, cleanup := NewLogChecker(log.DEFAULT)
|
||||
func TestLogCheckerInfo(t *testing.T) {
|
||||
lc, cleanup := NewLogChecker(log.DEFAULT, log.INFO)
|
||||
defer cleanup()
|
||||
|
||||
lc.Filter("First", "Third").StopMark("End")
|
||||
|
@ -24,11 +24,13 @@ func TestLogChecker(t *testing.T) {
|
|||
assert.False(t, stopped)
|
||||
|
||||
log.Info("First")
|
||||
log.Debug("Third")
|
||||
filtered, stopped = lc.Check(100 * time.Millisecond)
|
||||
assert.ElementsMatch(t, []bool{true, false}, filtered)
|
||||
assert.False(t, stopped)
|
||||
|
||||
log.Info("Second")
|
||||
log.Debug("Third")
|
||||
filtered, stopped = lc.Check(100 * time.Millisecond)
|
||||
assert.ElementsMatch(t, []bool{true, false}, filtered)
|
||||
assert.False(t, stopped)
|
||||
|
@ -43,3 +45,14 @@ func TestLogChecker(t *testing.T) {
|
|||
assert.ElementsMatch(t, []bool{true, true}, filtered)
|
||||
assert.True(t, stopped)
|
||||
}
|
||||
|
||||
func TestLogCheckerDebug(t *testing.T) {
|
||||
lc, cleanup := NewLogChecker(log.DEFAULT, log.DEBUG)
|
||||
defer cleanup()
|
||||
|
||||
lc.StopMark("End")
|
||||
|
||||
log.Debug("End")
|
||||
_, stopped := lc.Check(100 * time.Millisecond)
|
||||
assert.True(t, stopped)
|
||||
}
|
||||
|
|
|
@ -495,7 +495,7 @@ func TestGiteaUploadUpdateGitForPullRequest(t *testing.T) {
|
|||
t.Run(testCase.name, func(t *testing.T) {
|
||||
stopMark := fmt.Sprintf(">>>>>>>>>>>>>STOP: %s<<<<<<<<<<<<<<<", testCase.name)
|
||||
|
||||
logChecker, cleanup := test.NewLogChecker(log.DEFAULT)
|
||||
logChecker, cleanup := test.NewLogChecker(log.DEFAULT, log.INFO)
|
||||
logChecker.Filter(testCase.logFilter...).StopMark(stopMark)
|
||||
defer cleanup()
|
||||
|
||||
|
|
Loading…
Reference in a new issue