95
96
// NewTest returns a new test resource instance
97
>
func NewTest(controller *gomock.Controller, serviceName primitives.ServiceName) *Test {
test_resource.go
98
>
logger := log.NewTestLogger()
99
>
100
>
frontendClient := workflowservicemock.NewMockWorkflowServiceClient(controller)
101
>
matchingClient := matchingservicemock.NewMockMatchingServiceClient(controller)
102
>
historyClient := historyservicemock.NewMockHistoryServiceClient(controller)
103
>
remoteFrontendClient := workflowservicemock.NewMockWorkflowServiceClient(controller)
104
>
remoteAdminClient := adminservicemock.NewMockAdminServiceClient(controller)
105
>
clusterMetadataManager := persistence.NewMockClusterMetadataManager(controller)
106
>
clientBean := client.NewMockBean(controller)
107
>
clientBean.EXPECT().GetFrontendClient().Return(frontendClient).AnyTimes()
108
>
clientBean.EXPECT().GetMatchingClient(gomock.Any()).Return(matchingClient, nil).AnyTimes()
109
>
clientBean.EXPECT().GetHistoryClient().Return(historyClient).AnyTimes()
110
>
clientBean.EXPECT().GetRemoteAdminClient(gomock.Any()).Return(remoteAdminClient, nil).AnyTimes()
111
>
clientBean.EXPECT().GetRemoteFrontendClient(gomock.Any()).Return(nil, remoteFrontendClient, nil).AnyTimes()
112
>
clientFactory := client.NewMockFactory(controller)
113
>
114
>
metadataMgr := persistence.NewMockMetadataManager(controller)
115
>
taskMgr := persistence.NewMockTaskManager(controller)
116
>
shardMgr := persistence.NewMockShardManager(controller)
117
>
executionMgr := persistence.NewMockExecutionManager(controller)
118
>
executionMgr.EXPECT().GetHistoryBranchUtil().Return(persistence.NewHistoryBranchUtil(serialization.NewSerializer())).AnyTimes()
119
>
namespaceReplicationQueue := persistence.NewMockNamespaceReplicationQueue(controller)
120
>
nexusEndpointMgr := persistence.NewMockNexusEndpointManager(controller)
121
>
122
>
membershipMonitor := membership.NewMockMonitor(controller)
123
>
hostInfoProvider := membership.NewMockHostInfoProvider(controller)
124
>
frontendServiceResolver := membership.NewMockServiceResolver(controller)
125
>
matchingServiceResolver := membership.NewMockServiceResolver(controller)
126
>
historyServiceResolver := membership.NewMockServiceResolver(controller)
127
>
workerServiceResolver := membership.NewMockServiceResolver(controller)
128
>
membershipMonitor.EXPECT().GetResolver(primitives.FrontendService).Return(frontendServiceResolver, nil).AnyTimes()
129
>
membershipMonitor.EXPECT().GetResolver(primitives.InternalFrontendService).Return(nil, membership.ErrUnknownService).AnyTimes()
130
>
membershipMonitor.EXPECT().GetResolver(primitives.MatchingService).Return(matchingServiceResolver, nil).AnyTimes()
131
>
membershipMonitor.EXPECT().GetResolver(primitives.HistoryService).Return(historyServiceResolver, nil).AnyTimes()
132
>
membershipMonitor.EXPECT().GetResolver(primitives.WorkerService).Return(workerServiceResolver, nil).AnyTimes()
133
>
membershipMonitor.EXPECT().WaitUntilInitialized(gomock.Any()).Return(nil).AnyTimes()
134
>
135
>
scope := tally.NewTestScope("test", nil)
136
>
metricsHandler := metrics.NewTallyMetricsHandler(metrics.ClientConfig{}, scope).WithTags(
137
>
metrics.ServiceNameTag(serviceName),
138
>
)
139
>
140
>
return &Test{
141
>
MetricsScope: scope,
142
>
ClusterMetadata: cluster.NewMockMetadata(controller),
143
>
SearchAttributesProvider: searchattribute.NewMockProvider(controller),
144
>
SearchAttributesManager: searchattribute.NewMockManager(controller),
145
>
SearchAttributesMapperProvider: searchattribute.NewMockMapperProvider(controller),
146
>
147
>
// other common resources
148
>
149
>
NamespaceCache: namespace.NewMockRegistry(controller),
150
>
TimeSource: clock.NewRealTimeSource(),
151
>
PayloadSerializer: serialization.NewSerializer(),
152
>
MetricsHandler: metricsHandler,
153
>
ArchivalMetadata: archiver.NewMetadataMock(controller),
154
>
ArchiverProvider: provider.NewMockArchiverProvider(controller),
155
>
156
>
// membership infos
157
>
158
>
MembershipMonitor: membershipMonitor,
159
>
HostInfoProvider: hostInfoProvider,
160
>
FrontendServiceResolver: frontendServiceResolver,
161
>
MatchingServiceResolver: matchingServiceResolver,
162
>
HistoryServiceResolver: historyServiceResolver,
163
>
WorkerServiceResolver: workerServiceResolver,
164
>
165
>
// internal services clients
166
>
167
>
SDKClientFactory: sdk.NewMockClientFactory(controller),
168
>
FrontendClient: frontendClient,
169
>
MatchingClient: matchingClient,
170
>
HistoryClient: historyClient,
171
>
RemoteAdminClient: remoteAdminClient,
172
>
RemoteFrontendClient: remoteFrontendClient,
173
>
ClientBean: clientBean,
174
>
ClientFactory: clientFactory,
175
>
ESClient: esclient.NewMockClient(controller),
176
>
VisibilityManager: manager.NewMockVisibilityManager(controller),
177
>
178
>
// persistence clients
179
>
180
>
MetadataMgr: metadataMgr,
181
>
ClusterMetadataMgr: clusterMetadataManager,
182
>
TaskMgr: taskMgr,
183
>
NamespaceReplicationQueue: namespaceReplicationQueue,
184
>
ShardMgr: shardMgr,
185
>
ExecutionMgr: executionMgr,
186
>
NexusEndpointManager: nexusEndpointMgr,
187
>
188
>
// logger
189
>
190
>
Logger: logger,
191
>
}
192
>
}
193
194
// Start for testing