From b9a69535f43ade1227a426e7f3c911efff44fd9e Mon Sep 17 00:00:00 2001 From: Ross Jones Date: Wed, 10 Apr 2024 22:07:47 +0100 Subject: [PATCH] Actually use the mock Clock so we do not wait in test --- pkg/node/manager/events_test.go | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/pkg/node/manager/events_test.go b/pkg/node/manager/events_test.go index d6ba8b597..27496d837 100644 --- a/pkg/node/manager/events_test.go +++ b/pkg/node/manager/events_test.go @@ -19,7 +19,7 @@ type EventEmitterSuite struct { suite.Suite ctrl *gomock.Controller ctx context.Context - clock clock.Clock + clock *clock.Mock } func TestEventEmitterSuite(t *testing.T) { @@ -79,19 +79,23 @@ func (s *EventEmitterSuite) TestEmitEventWithNoCallbacks() { } func (s *EventEmitterSuite) TestEmitWithSlowCallback() { - e := manager.NewNodeEventEmitter() + e := manager.NewNodeEventEmitter(manager.WithClock(s.clock)) s.NotNil(e) - e.RegisterHandler(testSleepyHandler{s}) + e.RegisterHandler(testSleepyHandler{s.clock}) + + go func() { + s.clock.Add(10 * time.Second) + }() err := e.EmitEvent(s.ctx, models.NodeInfo{}, manager.NodeEventRejected) s.Error(err) } type testSleepyHandler struct { - s *EventEmitterSuite + c *clock.Mock } func (t testSleepyHandler) HandleNodeEvent(ctx context.Context, info models.NodeInfo, event manager.NodeEvent) { - t.s.clock.Sleep(2 * time.Second) + t.c.Sleep(2 * time.Second) }