@@ -172,6 +172,28 @@ local simple_operation_cases = {
172
172
},
173
173
op = ' insert' ,
174
174
},
175
+ insert_many = {
176
+ func = ' crud.insert_many' ,
177
+ args = {
178
+ space_name ,
179
+ {
180
+ { 21 , box .NULL , ' Ivan' , ' Ivanov' , 20 , ' Moscow' },
181
+ { 31 , box .NULL , ' Oleg' , ' Petrov' , 25 , ' Moscow' },
182
+ }
183
+ },
184
+ op = ' insert_many' ,
185
+ },
186
+ insert_object_many = {
187
+ func = ' crud.insert_object_many' ,
188
+ args = {
189
+ space_name ,
190
+ {
191
+ { id = 22 , name = ' Ivan' , last_name = ' Ivanov' , age = 20 , city = ' Moscow' },
192
+ { id = 32 , name = ' Oleg' , last_name = ' Petrov' , age = 25 , city = ' Moscow' },
193
+ }
194
+ },
195
+ op = ' insert_many' ,
196
+ },
175
197
get = {
176
198
func = ' crud.get' ,
177
199
args = { space_name , { 12 } },
@@ -203,6 +225,28 @@ local simple_operation_cases = {
203
225
},
204
226
op = ' replace' ,
205
227
},
228
+ replace_many = {
229
+ func = ' crud.replace_many' ,
230
+ args = {
231
+ space_name ,
232
+ {
233
+ { 21 , box .NULL , ' Peter' , ' Ivanov' , 40 , ' Moscow' },
234
+ { 31 , box .NULL , ' Ivan' , ' Petrov' , 35 , ' Moscow' },
235
+ }
236
+ },
237
+ op = ' replace_many' ,
238
+ },
239
+ replace_object_many = {
240
+ func = ' crud.replace_object_many' ,
241
+ args = {
242
+ space_name ,
243
+ {
244
+ { id = 22 , name = ' Peter' , last_name = ' Ivanov' , age = 40 , city = ' Moscow' },
245
+ { id = 32 , name = ' Ivan' , last_name = ' Petrov' , age = 35 , city = ' Moscow' },
246
+ }
247
+ },
248
+ op = ' replace_many' ,
249
+ },
206
250
update = {
207
251
prepare = function (g )
208
252
helpers .insert_objects (g , space_name , {{
@@ -232,6 +276,36 @@ local simple_operation_cases = {
232
276
},
233
277
op = ' upsert' ,
234
278
},
279
+ upsert_many = {
280
+ func = ' crud.upsert_many' ,
281
+ args = {
282
+ space_name ,
283
+ {
284
+ { 26 , box .NULL , ' Ivan' , ' Ivanov' , 20 , ' Moscow' },
285
+ { 36 , box .NULL , ' Oleg' , ' Petrov' , 25 , ' Moscow' },
286
+ },
287
+ {
288
+ {{' +' , ' age' , 1 }},
289
+ {{' +' , ' age' , 1 }},
290
+ },
291
+ },
292
+ op = ' upsert_many' ,
293
+ },
294
+ upsert_object_many = {
295
+ func = ' crud.upsert_object_many' ,
296
+ args = {
297
+ space_name ,
298
+ {
299
+ { id = 27 , name = ' Ivan' , last_name = ' Ivanov' , age = 20 , city = ' Moscow' },
300
+ { id = 37 , name = ' Oleg' , last_name = ' Petrov' , age = 25 , city = ' Moscow' },
301
+ },
302
+ {
303
+ {{' +' , ' age' , 1 }},
304
+ {{' +' , ' age' , 1 }}
305
+ },
306
+ },
307
+ op = ' upsert_many' ,
308
+ },
235
309
delete = {
236
310
func = ' crud.delete' ,
237
311
args = { space_name , { 12 } },
@@ -274,6 +348,18 @@ local simple_operation_cases = {
274
348
op = ' insert' ,
275
349
expect_error = true ,
276
350
},
351
+ insert_many_error = {
352
+ func = ' crud.insert_many' ,
353
+ args = { space_name , {{ ' id' }} },
354
+ op = ' insert_many' ,
355
+ expect_error = true ,
356
+ },
357
+ insert_object_many_error = {
358
+ func = ' crud.insert_object_many' ,
359
+ args = { space_name , {{ ' id' }} },
360
+ op = ' insert_many' ,
361
+ expect_error = true ,
362
+ },
277
363
get_error = {
278
364
func = ' crud.get' ,
279
365
args = { space_name , { ' id' } },
@@ -305,6 +391,18 @@ local simple_operation_cases = {
305
391
op = ' replace' ,
306
392
expect_error = true ,
307
393
},
394
+ replace_many_error = {
395
+ func = ' crud.replace_many' ,
396
+ args = { space_name , {{ ' id' }} },
397
+ op = ' replace_many' ,
398
+ expect_error = true ,
399
+ },
400
+ replace_object_many_error = {
401
+ func = ' crud.replace_object_many' ,
402
+ args = { space_name , {{ ' id' }} },
403
+ op = ' replace_many' ,
404
+ expect_error = true ,
405
+ },
308
406
update_error = {
309
407
func = ' crud.update' ,
310
408
args = { space_name , { ' id' }, {{' +' , ' age' , 1 }} },
@@ -323,6 +421,18 @@ local simple_operation_cases = {
323
421
op = ' upsert' ,
324
422
expect_error = true ,
325
423
},
424
+ upsert_many_error = {
425
+ func = ' crud.upsert_many' ,
426
+ args = { space_name , {{ ' id' }}, {{{' +' , ' age' , 1 }}} },
427
+ op = ' upsert_many' ,
428
+ expect_error = true ,
429
+ },
430
+ upsert_object_many_error = {
431
+ func = ' crud.upsert_object_many' ,
432
+ args = { space_name , {{ ' id' }}, {{{' +' , ' age' , 1 }}} },
433
+ op = ' upsert_many' ,
434
+ expect_error = true ,
435
+ },
326
436
delete_error = {
327
437
func = ' crud.delete' ,
328
438
args = { space_name , { ' id' } },
@@ -778,8 +888,8 @@ local function validate_metrics(g, metrics)
778
888
t .assert_type (stats_sum , ' table' , ' `tnt_crud_stats` summary metrics found' )
779
889
780
890
781
- local expected_operations = { ' insert' , ' get' , ' replace' , ' update' ,
782
- ' upsert' , ' delete' , ' select' , ' truncate' , ' len' , ' count' , ' borders' }
891
+ local expected_operations = { ' insert' , ' insert_many ' , ' get' , ' replace' , ' replace_many ' , ' update' ,
892
+ ' upsert' , ' upsert_many ' , ' delete' , ' select' , ' truncate' , ' len' , ' count' , ' borders' }
783
893
784
894
if g .params .quantiles == true then
785
895
t .assert_items_equals (get_unique_label_values (quantile_stats , ' operation' ), expected_operations ,
0 commit comments