117
}
118
120
>
numTimers := 20
121
>
122
>
shardID := rand.Int31()
123
>
namespaceID := primitives.NewUUID()
124
>
workflowID := shuffle.String(testHistoryExecutionWorkflowID)
125
>
runID := primitives.NewUUID()
126
>
127
>
var timers []sqlplugin.TimerInfoMapsRow
128
>
for range numTimers {
129
>
timer := s.newRandomExecutionTimerRow(shardID, namespaceID, workflowID, runID, shuffle.String(testHistoryExecutionTimerID))
130
>
timers = append(timers, timer)
131
>
}
132
>
result, err := s.store.ReplaceIntoTimerInfoMaps(newExecutionContext(), timers)
133
>
s.NoError(err)
134
>
rowsAffected, err := result.RowsAffected()
135
>
s.NoError(err)
136
>
s.Equal(numTimers, int(rowsAffected))
137
>
138
>
selectFilter := sqlplugin.TimerInfoMapsAllFilter{
139
>
ShardID: shardID,
140
>
NamespaceID: namespaceID,
141
>
WorkflowID: workflowID,
142
>
RunID: runID,
143
>
}
144
>
rows, err := s.store.SelectAllFromTimerInfoMaps(newExecutionContext(), selectFilter)
145
>
s.NoError(err)
146
>
timerMap := map[string]sqlplugin.TimerInfoMapsRow{}
147
>
for _, timer := range timers {
148
>
timerMap[timer.TimerID] = timer
149
>
}
150
>
rowMap := map[string]sqlplugin.TimerInfoMapsRow{}
151
>
for _, timer := range rows {
152
>
rowMap[timer.TimerID] = timer
153
>
}
154
>
s.Equal(timerMap, rowMap)
155
}
156