diff --git a/featureflag/featureflag.go b/featureflag/featureflag.go index 9cb9d7e..d6eff8a 100644 --- a/featureflag/featureflag.go +++ b/featureflag/featureflag.go @@ -38,7 +38,7 @@ func NewClient(cfg *Config, logger logrus.FieldLogger) (Client, error) { config.SendEvents = false } - configureLogger(config.Loggers, logger) + configureLogger(&config.Loggers, logger) if cfg.RelayHost != "" { config.BaseUri = cfg.RelayHost @@ -98,7 +98,7 @@ func (c *ldClient) AllEnabledFlags(key string) []string { return flags } -func configureLogger(ldLogger ldlog.Loggers, log logrus.FieldLogger) { +func configureLogger(ldLogger *ldlog.Loggers, log logrus.FieldLogger) { if log == nil { l := logrus.New() l.SetOutput(ioutil.Discard) diff --git a/featureflag/featureflag_test.go b/featureflag/featureflag_test.go index b548276..6890d82 100644 --- a/featureflag/featureflag_test.go +++ b/featureflag/featureflag_test.go @@ -1,9 +1,12 @@ package featureflag import ( + "bytes" "testing" "time" + "github.com/sirupsen/logrus" + "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" "gopkg.in/launchdarkly/go-server-sdk.v4/ldfiledata" ) @@ -56,3 +59,19 @@ func TestAllEnabledFlags(t *testing.T) { require.Equal(t, []string{"my-boolean-flag-key"}, flags) } + +func TestLogging(t *testing.T) { + cfg := Config{ + Key: "ABCD", + RequestTimeout: time.Second, + Enabled: false, + } + + logBuf := new(bytes.Buffer) + log := logrus.New() + log.Out = logBuf + + _, err := NewClient(&cfg, log.WithField("component", "launch_darkly")) + require.NoError(t, err) + assert.NotEmpty(t, logBuf.Bytes()) +}