Skip to content

Commit 8f418c2

Browse files
0xDEC0DEretr0h
authored andcommitted
test: drop customizations on the exec.RunInTempDir mock
Stop whinging about how hard mockgen is to use, and properly set up test expectations with DoAndReturn instead
1 parent 3d2f868 commit 8f418c2

File tree

2 files changed

+24
-11
lines changed

2 files changed

+24
-11
lines changed

internal/mocks/exec/exec_mock.go

Lines changed: 0 additions & 8 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

internal/repositories/repositories_public_test.go

Lines changed: 24 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -194,7 +194,14 @@ func (suite *RepositoriesPublicTestSuite) TestOverlayOkWhenCopySources() {
194194
repos := suite.NewTestRepositoriesManager(repoConfig)
195195

196196
suite.mockRepo.EXPECT().Clone(gomock.Any(), gomock.Any()).Return("", nil)
197-
suite.mockExec.EXPECT().RunInTempDir(gomock.Any(), gomock.Any(), gomock.Any()).Return(nil)
197+
suite.mockExec.EXPECT().
198+
RunInTempDir(gomock.Any(), gomock.Any(), gomock.Any()).
199+
DoAndReturn(func(dir string, pattern string, fn func(string) error) error {
200+
if fn != nil {
201+
return fn("stub")
202+
}
203+
return nil
204+
})
198205
suite.mockRepo.EXPECT().Worktree(repoConfig[0], gomock.Any(), gomock.Any()).Return(nil)
199206
suite.mockRepo.EXPECT().CopySources(repoConfig[0], gomock.Any()).Return(nil)
200207

@@ -219,7 +226,14 @@ func (suite *RepositoriesPublicTestSuite) TestOverlayReturnsErrorWhenCopySources
219226
errors := errors.New("tests error")
220227

221228
suite.mockRepo.EXPECT().Clone(gomock.Any(), gomock.Any()).Return("", nil)
222-
suite.mockExec.EXPECT().RunInTempDir(gomock.Any(), gomock.Any(), gomock.Any()).Return(nil)
229+
suite.mockExec.EXPECT().
230+
RunInTempDir(gomock.Any(), gomock.Any(), gomock.Any()).
231+
DoAndReturn(func(dir string, pattern string, fn func(string) error) error {
232+
if fn != nil {
233+
return fn("stub")
234+
}
235+
return nil
236+
})
223237
suite.mockRepo.EXPECT().Worktree(repoConfig[0], gomock.Any(), gomock.Any()).Return(nil)
224238
suite.mockRepo.EXPECT().CopySources(gomock.Any(), gomock.Any()).Return(errors)
225239

@@ -244,7 +258,14 @@ func (suite *RepositoriesPublicTestSuite) TestOverlayErrorCreatingCopySourcesWor
244258
errors := errors.New("tests error")
245259

246260
suite.mockRepo.EXPECT().Clone(gomock.Any(), gomock.Any()).Return("", nil)
247-
suite.mockExec.EXPECT().RunInTempDir(gomock.Any(), gomock.Any(), gomock.Any()).Return(nil)
261+
suite.mockExec.EXPECT().
262+
RunInTempDir(gomock.Any(), gomock.Any(), gomock.Any()).
263+
DoAndReturn(func(dir string, pattern string, fn func(string) error) error {
264+
if fn != nil {
265+
return fn("stub")
266+
}
267+
return nil
268+
})
248269
suite.mockRepo.EXPECT().Worktree(repoConfig[0], gomock.Any(), gomock.Any()).Return(errors)
249270

250271
err := repos.Overlay()

0 commit comments

Comments
 (0)