116
}
117
119
>
numChildWorkflows := 20
120
>
121
>
shardID := rand.Int31()
122
>
namespaceID := primitives.NewUUID()
123
>
workflowID := shuffle.String(testHistoryExecutionWorkflowID)
124
>
runID := primitives.NewUUID()
125
>
126
>
var childWorkflows []sqlplugin.ChildExecutionInfoMapsRow
127
>
for range numChildWorkflows {
128
>
childWorkflow := s.newRandomExecutionChildWorkflowRow(shardID, namespaceID, workflowID, runID, rand.Int63())
129
>
childWorkflows = append(childWorkflows, childWorkflow)
130
>
}
131
>
result, err := s.store.ReplaceIntoChildExecutionInfoMaps(newExecutionContext(), childWorkflows)
132
>
s.NoError(err)
133
>
rowsAffected, err := result.RowsAffected()
134
>
s.NoError(err)
135
>
s.Equal(numChildWorkflows, int(rowsAffected))
136
>
137
>
selectFilter := sqlplugin.ChildExecutionInfoMapsAllFilter{
138
>
ShardID: shardID,
139
>
NamespaceID: namespaceID,
140
>
WorkflowID: workflowID,
141
>
RunID: runID,
142
>
}
143
>
rows, err := s.store.SelectAllFromChildExecutionInfoMaps(newExecutionContext(), selectFilter)
144
>
s.NoError(err)
145
>
childWorkflowMap := map[int64]sqlplugin.ChildExecutionInfoMapsRow{}
146
>
for _, childWorkflow := range childWorkflows {
147
>
childWorkflowMap[childWorkflow.InitiatedID] = childWorkflow
148
>
}
149
>
rowMap := map[int64]sqlplugin.ChildExecutionInfoMapsRow{}
150
>
for _, childWorkflow := range rows {
151
>
rowMap[childWorkflow.InitiatedID] = childWorkflow
152
>
}
153
>
s.Equal(childWorkflowMap, rowMap)
154
}
155