mirror of
https://codeberg.org/forgejo/forgejo
synced 2024-08-20 06:31:35 +02:00
So the caller can check log events at the desired level instead of being limited to the default level log.INFO (cherry picked from commit2fbf5f9555
) (cherry picked from commite2137a3147
)
59 lines
1.4 KiB
Go
59 lines
1.4 KiB
Go
// Copyright 2023 The Gitea Authors. All rights reserved.
|
|
// SPDX-License-Identifier: MIT
|
|
|
|
package test
|
|
|
|
import (
|
|
"testing"
|
|
"time"
|
|
|
|
"code.gitea.io/gitea/modules/log"
|
|
|
|
"github.com/stretchr/testify/assert"
|
|
)
|
|
|
|
func TestLogCheckerInfo(t *testing.T) {
|
|
lc, cleanup := NewLogChecker(log.DEFAULT, log.INFO)
|
|
defer cleanup()
|
|
|
|
lc.Filter("First", "Third").StopMark("End")
|
|
log.Info("test")
|
|
|
|
filtered, stopped := lc.Check(100 * time.Millisecond)
|
|
assert.ElementsMatch(t, []bool{false, false}, filtered)
|
|
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)
|
|
|
|
log.Info("Third")
|
|
filtered, stopped = lc.Check(100 * time.Millisecond)
|
|
assert.ElementsMatch(t, []bool{true, true}, filtered)
|
|
assert.False(t, stopped)
|
|
|
|
log.Info("End")
|
|
filtered, stopped = lc.Check(100 * time.Millisecond)
|
|
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)
|
|
}
|