From ff07b25fdf830fffcf67b64674799b11941542ac Mon Sep 17 00:00:00 2001 From: Francois Date: Thu, 22 Dec 2022 10:54:08 +0100 Subject: [PATCH] Fix data race in hooks.test package --- hooks/test/test.go | 2 +- hooks/test/test_test.go | 19 +++++++++++++++++++ 2 files changed, 20 insertions(+), 1 deletion(-) diff --git a/hooks/test/test.go b/hooks/test/test.go index b16d06654..046f0bf6c 100644 --- a/hooks/test/test.go +++ b/hooks/test/test.go @@ -32,7 +32,7 @@ func NewGlobal() *Hook { func NewLocal(logger *logrus.Logger) *Hook { hook := new(Hook) - logger.Hooks.Add(hook) + logger.AddHook(hook) return hook diff --git a/hooks/test/test_test.go b/hooks/test/test_test.go index 636bad512..9601491aa 100644 --- a/hooks/test/test_test.go +++ b/hooks/test/test_test.go @@ -83,3 +83,22 @@ func TestFatalWithAlternateExit(t *testing.T) { assert.Equal("something went very wrong", hook.LastEntry().Message) assert.Equal(1, len(hook.Entries)) } + +func TestNewLocal(t *testing.T) { + assert := assert.New(t) + logger := logrus.New() + + var wg sync.WaitGroup + defer wg.Wait() + + wg.Add(10) + for i := 0; i < 10; i++ { + go func(i int) { + logger.Info("info") + wg.Done() + }(i) + } + + hook := NewLocal(logger) + assert.NotNil(hook) +}