github.com/juju/juju@v0.0.0-20240430160146-1752b71fcf00/worker/filenotifywatcher/package_test.go (about)

     1  // Copyright 2023 Canonical Ltd.
     2  // Licensed under the AGPLv3, see LICENCE file for details.
     3  
     4  package filenotifywatcher
     5  
     6  import (
     7  	"testing"
     8  	time "time"
     9  
    10  	jujutesting "github.com/juju/testing"
    11  	"go.uber.org/mock/gomock"
    12  	gc "gopkg.in/check.v1"
    13  )
    14  
    15  //go:generate go run go.uber.org/mock/mockgen -package filenotifywatcher -destination watcher_mock_test.go github.com/juju/juju/worker/filenotifywatcher FileNotifyWatcher,FileWatcher
    16  //go:generate go run go.uber.org/mock/mockgen -package filenotifywatcher -destination logger_mock_test.go github.com/juju/juju/worker/filenotifywatcher Logger
    17  //go:generate go run go.uber.org/mock/mockgen -package filenotifywatcher -destination clock_mock_test.go github.com/juju/clock Clock,Timer
    18  
    19  func TestPackage(t *testing.T) {
    20  	gc.TestingT(t)
    21  }
    22  
    23  type baseSuite struct {
    24  	jujutesting.IsolationSuite
    25  
    26  	clock   *MockClock
    27  	timer   *MockTimer
    28  	logger  *MockLogger
    29  	watcher *MockFileWatcher
    30  }
    31  
    32  func (s *baseSuite) setupMocks(c *gc.C) *gomock.Controller {
    33  	ctrl := gomock.NewController(c)
    34  
    35  	s.clock = NewMockClock(ctrl)
    36  	s.timer = NewMockTimer(ctrl)
    37  	s.logger = NewMockLogger(ctrl)
    38  	s.watcher = NewMockFileWatcher(ctrl)
    39  
    40  	return ctrl
    41  }
    42  
    43  func (s *baseSuite) expectAnyLogs() {
    44  	s.logger.EXPECT().Errorf(gomock.Any()).AnyTimes()
    45  	s.logger.EXPECT().Warningf(gomock.Any()).AnyTimes()
    46  	s.logger.EXPECT().Infof(gomock.Any(), gomock.Any()).AnyTimes()
    47  	s.logger.EXPECT().Debugf(gomock.Any()).AnyTimes()
    48  }
    49  
    50  func (s *baseSuite) expectAnyClock() {
    51  	s.clock.EXPECT().Now().Return(time.Now()).AnyTimes()
    52  }