mirror of
https://github.com/jesseduffield/lazygit.git
synced 2025-01-22 05:29:44 +02:00
42 lines
942 B
Go
42 lines
942 B
Go
|
package test
|
||
|
|
||
|
import (
|
||
|
"fmt"
|
||
|
"testing"
|
||
|
|
||
|
"github.com/sirupsen/logrus"
|
||
|
"github.com/stretchr/testify/assert"
|
||
|
)
|
||
|
|
||
|
var (
|
||
|
_ logrus.FieldLogger = &FakeFieldLogger{}
|
||
|
)
|
||
|
|
||
|
// for now we're just tracking calls to the Error and Errorf methods
|
||
|
type FakeFieldLogger struct {
|
||
|
loggedErrors []string
|
||
|
*logrus.Entry
|
||
|
}
|
||
|
|
||
|
func (self *FakeFieldLogger) Error(args ...interface{}) {
|
||
|
if len(args) != 1 {
|
||
|
panic("Expected exactly one argument to FakeFieldLogger.Error")
|
||
|
}
|
||
|
|
||
|
switch arg := args[0].(type) {
|
||
|
case error:
|
||
|
self.loggedErrors = append(self.loggedErrors, arg.Error())
|
||
|
case string:
|
||
|
self.loggedErrors = append(self.loggedErrors, arg)
|
||
|
}
|
||
|
}
|
||
|
|
||
|
func (self *FakeFieldLogger) Errorf(format string, args ...interface{}) {
|
||
|
msg := fmt.Sprintf(format, args...)
|
||
|
self.loggedErrors = append(self.loggedErrors, msg)
|
||
|
}
|
||
|
|
||
|
func (self *FakeFieldLogger) AssertErrors(t *testing.T, expectedErrors []string) {
|
||
|
assert.EqualValues(t, expectedErrors, self.loggedErrors)
|
||
|
}
|