From 79e6799f4032244de880adc6d11fd23e6276316e Mon Sep 17 00:00:00 2001 From: James Houlahan Date: Wed, 22 Jul 2020 12:19:52 +0200 Subject: [PATCH] fix: panic in integration tests --- test/fakeapi/controller.go | 6 ++++-- test/fakeapi/fakeapi.go | 3 +++ 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/test/fakeapi/controller.go b/test/fakeapi/controller.go index 290be4c3..c8b6d080 100644 --- a/test/fakeapi/controller.go +++ b/test/fakeapi/controller.go @@ -42,7 +42,8 @@ type Controller struct { labelsByUsername map[string][]*pmapi.Label messagesByUsername map[string][]*pmapi.Message - log *logrus.Entry + locker sync.Locker + log *logrus.Entry } func NewController(cm *pmapi.ClientManager) *Controller { @@ -62,7 +63,8 @@ func NewController(cm *pmapi.ClientManager) *Controller { labelsByUsername: map[string][]*pmapi.Label{}, messagesByUsername: map[string][]*pmapi.Message{}, - log: logrus.WithField("pkg", "fakeapi-controller"), + locker: &sync.Mutex{}, + log: logrus.WithField("pkg", "fakeapi-controller"), } cm.SetClientConstructor(func(userID string) pmapi.Client { diff --git a/test/fakeapi/fakeapi.go b/test/fakeapi/fakeapi.go index 74c6a77e..c756bd25 100644 --- a/test/fakeapi/fakeapi.go +++ b/test/fakeapi/fakeapi.go @@ -71,6 +71,9 @@ func (api *FakePMAPI) CloseConnections() { } func (api *FakePMAPI) checkAndRecordCall(method method, path string, request interface{}) error { + api.controller.locker.Lock() + defer api.controller.locker.Unlock() + if err := api.checkInternetAndRecordCall(method, path, request); err != nil { return err }