func (t *MockedEpsagonTracer) verifyLabel(label epsagonLabel) bool {
	return true
}
verifyLabel implements verifyLabel
package tracer
import (
	"time"
	"github.com/epsagon/epsagon-go/protocol"
)
type MockedEpsagonTracer struct {
	Exceptions      *[]*protocol.Exception
	Events          *[]*protocol.Event
	Labels          map[string]interface{}
	RunnerException *protocol.Exception
	Config          *Config
	PanicStart        bool
	PanicAddEvent     bool
	PanicAddException bool
	PanicStop         bool
	DelayAddEvent     bool
	DelayedEventsChan chan bool
	stopped           bool
}
func (t *MockedEpsagonTracer) Start() {
	if t.PanicStart {
		panic("panic in Start()")
	}
	t.stopped = false
}
func (t *MockedEpsagonTracer) Running() bool {
	return false
}
func (t *MockedEpsagonTracer) SendStopSignal() {
	if t.PanicStop {
		panic("panic in Stop()")
	}
	t.stopped = true
}
func (t *MockedEpsagonTracer) Stop() {
	if t.PanicStop {
		panic("panic in Stop()")
	}
	t.stopped = true
}
func (t *MockedEpsagonTracer) Stopped() bool {
	return t.stopped
}
func (t *MockedEpsagonTracer) AddEvent(e *protocol.Event) {
	if t.PanicAddEvent {
		panic("panic in AddEvent()")
	}
	if t.DelayAddEvent {
		go func() {
			time.Sleep(time.Second)
			*t.Events = append(*t.Events, e)
			t.DelayedEventsChan <- true
		}()
	} else {
		*t.Events = append(*t.Events, e)
	}
}
func (t *MockedEpsagonTracer) AddException(e *protocol.Exception) {
	if t.PanicAddException {
		panic("panic in AddException()")
	}
	*t.Exceptions = append(*t.Exceptions, e)
}
func (t *MockedEpsagonTracer) GetConfig() *Config {
	return t.Config
}
func (t *MockedEpsagonTracer) AddExceptionTypeAndMessage(exceptionType, msg string) {
	t.AddException(&protocol.Exception{
		Type:    exceptionType,
		Message: msg,
		Time:    GetTimestamp(),
	})
}
func (t *MockedEpsagonTracer) AddLabel(key string, value interface{}) {
	t.Labels[key] = value
}