42
}
43
45
>
queueID := shuffle.Bytes(testMatchingTaskTaskQueueID)
46
>
47
>
tasks := []sqlplugin.TasksRowV2{
48
>
s.newRandomTasksRow(queueID, 2, 10),
49
>
s.newRandomTasksRow(queueID, 1, 20),
50
>
s.newRandomTasksRow(queueID, 1, 5),
51
>
s.newRandomTasksRow(queueID, 2, 15),
52
>
}
53
>
result, err := s.store.InsertIntoTasksV2(newExecutionContext(), tasks)
54
>
s.NoError(err)
55
>
rowsAffected, err := result.RowsAffected()
56
>
s.NoError(err)
57
>
s.Equal(len(tasks), int(rowsAffected))
58
>
59
>
filter := sqlplugin.TasksFilterV2{
60
>
RangeHash: testMatchingTaskRangeHash,
61
>
TaskQueueID: queueID,
62
>
InclusiveMinLevel: &sqlplugin.FairLevel{TaskPass: 1, TaskID: 0},
63
>
PageSize: new(len(tasks)),
64
>
}
65
>
rows, err := s.store.SelectFromTasksV2(newExecutionContext(), filter)
66
>
s.NoError(err)
67
>
ids := make([]int64, len(rows))
68
>
for i, r := range rows {
69
>
ids[i] = r.TaskID
70
>
}
71
>
expectedIDs := []int64{5, 20, 10, 15}
72
>
s.Equal(expectedIDs, ids)
73
}
74