Skip to content

Commit

Permalink
Merge pull request #638 from uber/options_to_create_mocks
Browse files Browse the repository at this point in the history
Add option to select which mocks to generate. This helps to specify which mocks to create when running postGenhooks (Client mock, service Mock, workflow Mock)
  • Loading branch information
tejaswiagarwal committed Sep 17, 2019
2 parents cbd528d + 0f28863 commit e5d20d5
Show file tree
Hide file tree
Showing 2 changed files with 16 additions and 6 deletions.
20 changes: 15 additions & 5 deletions codegen/module_system.go
Original file line number Diff line number Diff line change
Expand Up @@ -230,20 +230,30 @@ type ClientTestFixture struct {
// module system (clients, endpoints, services) with a post build hook to generate client and service mocks
func NewDefaultModuleSystemWithMockHook(
h *PackageHelper,
clientsMock bool,
workflowMock bool,
serviceMock bool,
hooks ...PostGenHook,
) (*ModuleSystem, error) {
t, err := NewDefaultTemplate()
if err != nil {
return nil, err
}

clientMockGenHook, err := ClientMockGenHook(h, t)
if err != nil {
return nil, errors.Wrap(err, "error creating client mock gen hook")
var clientMockGenHook, workflowMockGenHook, serviceMockGenHook PostGenHook
if clientsMock {
clientMockGenHook, err = ClientMockGenHook(h, t)
if err != nil {
return nil, errors.Wrap(err, "error creating client mock gen hook")
}
}

workflowMockGenHook := WorkflowMockGenHook(h, t)
serviceMockGenHook := ServiceMockGenHook(h, t)
if workflowMock {
workflowMockGenHook = WorkflowMockGenHook(h, t)
}
if serviceMock {
serviceMockGenHook = ServiceMockGenHook(h, t)
}

allHooks := append([]PostGenHook{
clientMockGenHook,
Expand Down
2 changes: 1 addition & 1 deletion codegen/runner/runner.go
Original file line number Diff line number Diff line change
Expand Up @@ -142,7 +142,7 @@ func main() {
}
var moduleSystem *codegen.ModuleSystem
if genMock {
moduleSystem, err = codegen.NewDefaultModuleSystemWithMockHook(packageHelper)
moduleSystem, err = codegen.NewDefaultModuleSystemWithMockHook(packageHelper, true, true, true)
} else {
moduleSystem, err = codegen.NewDefaultModuleSystem(packageHelper)
}
Expand Down

0 comments on commit e5d20d5

Please sign in to comment.