216
}
217
219
>
shardID := rand.Int31()
220
>
namespaceID := primitives.NewUUID()
221
>
workflowID := shuffle.String(testHistoryExecutionWorkflowID)
222
>
runID := primitives.NewUUID()
223
>
requestID := primitives.NewUUID().String()
224
>
lastWriteVersion := rand.Int63()
225
>
226
>
currentExecution := s.newRandomCurrentExecutionRow(shardID, namespaceID, workflowID, runID, requestID, lastWriteVersion)
227
>
result, err := s.store.InsertIntoCurrentExecutions(newExecutionContext(), ¤tExecution)
228
>
s.NoError(err)
229
>
rowsAffected, err := result.RowsAffected()
230
>
s.NoError(err)
231
>
s.Equal(1, int(rowsAffected))
232
>
233
>
filter := sqlplugin.CurrentExecutionsFilter{
234
>
ShardID: shardID,
235
>
NamespaceID: namespaceID,
236
>
WorkflowID: workflowID,
237
>
RunID: runID,
238
>
ArchetypeID: s.archetypeID,
239
>
}
240
>
result, err = s.store.DeleteFromCurrentExecutions(newExecutionContext(), filter)
241
>
s.NoError(err)
242
>
rowsAffected, err = result.RowsAffected()
243
>
s.NoError(err)
244
>
s.Equal(1, int(rowsAffected))
245
>
246
>
filter.RunID = nil
247
>
_, err = s.store.SelectFromCurrentExecutions(newExecutionContext(), filter)
248
>
s.Error(err) // TODO persistence layer should do proper error translation
249
>
}
250
251
func (s *historyCurrentExecutionSuite) TestInsertDeleteSelect_Fail() {