github.com/juju/juju@v0.0.0-20240430160146-1752b71fcf00/worker/changestream/package_test.go (about) 1 // Copyright 2023 Canonical Ltd. 2 // Licensed under the AGPLv3, see LICENCE file for details. 3 4 package changestream 5 6 import ( 7 "testing" 8 time "time" 9 10 "go.uber.org/mock/gomock" 11 gc "gopkg.in/check.v1" 12 13 dbtesting "github.com/juju/juju/database/testing" 14 ) 15 16 //go:generate go run go.uber.org/mock/mockgen -package changestream -destination stream_mock_test.go github.com/juju/juju/worker/changestream ChangeStream,DBGetter,EventQueueWorker,EventQueue,FileNotifyWatcher 17 //go:generate go run go.uber.org/mock/mockgen -package changestream -destination logger_mock_test.go github.com/juju/juju/worker/changestream Logger 18 //go:generate go run go.uber.org/mock/mockgen -package changestream -destination clock_mock_test.go github.com/juju/clock Clock,Timer 19 20 func TestPackage(t *testing.T) { 21 gc.TestingT(t) 22 } 23 24 type baseSuite struct { 25 dbtesting.ControllerSuite 26 27 dbGetter *MockDBGetter 28 clock *MockClock 29 timer *MockTimer 30 logger *MockLogger 31 fileNotifyWatcher *MockFileNotifyWatcher 32 eventQueue *MockEventQueue 33 eventQueueWorker *MockEventQueueWorker 34 } 35 36 func (s *baseSuite) setupMocks(c *gc.C) *gomock.Controller { 37 ctrl := gomock.NewController(c) 38 39 s.dbGetter = NewMockDBGetter(ctrl) 40 s.clock = NewMockClock(ctrl) 41 s.timer = NewMockTimer(ctrl) 42 s.logger = NewMockLogger(ctrl) 43 s.fileNotifyWatcher = NewMockFileNotifyWatcher(ctrl) 44 s.eventQueue = NewMockEventQueue(ctrl) 45 s.eventQueueWorker = NewMockEventQueueWorker(ctrl) 46 47 return ctrl 48 } 49 50 func (s *baseSuite) expectAnyLogs() { 51 s.logger.EXPECT().Errorf(gomock.Any()).AnyTimes() 52 s.logger.EXPECT().Warningf(gomock.Any()).AnyTimes() 53 s.logger.EXPECT().Infof(gomock.Any(), gomock.Any()).AnyTimes() 54 s.logger.EXPECT().Debugf(gomock.Any()).AnyTimes() 55 s.logger.EXPECT().IsTraceEnabled().Return(false).AnyTimes() 56 } 57 58 func (s *baseSuite) expectClock() { 59 s.clock.EXPECT().Now().Return(time.Now()).AnyTimes() 60 }