@@ -175,6 +175,28 @@ local simple_operation_cases = {
175175 },
176176 op = ' insert' ,
177177 },
178+ insert_many = {
179+ func = ' crud.insert_many' ,
180+ args = {
181+ space_name ,
182+ {
183+ { 21 , box .NULL , ' Ivan' , ' Ivanov' , 20 , ' Moscow' },
184+ { 31 , box .NULL , ' Oleg' , ' Petrov' , 25 , ' Moscow' },
185+ }
186+ },
187+ op = ' insert_many' ,
188+ },
189+ insert_object_many = {
190+ func = ' crud.insert_object_many' ,
191+ args = {
192+ space_name ,
193+ {
194+ { id = 22 , name = ' Ivan' , last_name = ' Ivanov' , age = 20 , city = ' Moscow' },
195+ { id = 32 , name = ' Oleg' , last_name = ' Petrov' , age = 25 , city = ' Moscow' },
196+ }
197+ },
198+ op = ' insert_many' ,
199+ },
178200 get = {
179201 func = ' crud.get' ,
180202 args = { space_name , { 12 } },
@@ -206,6 +228,28 @@ local simple_operation_cases = {
206228 },
207229 op = ' replace' ,
208230 },
231+ replace_many = {
232+ func = ' crud.replace_many' ,
233+ args = {
234+ space_name ,
235+ {
236+ { 21 , box .NULL , ' Peter' , ' Ivanov' , 40 , ' Moscow' },
237+ { 31 , box .NULL , ' Ivan' , ' Petrov' , 35 , ' Moscow' },
238+ }
239+ },
240+ op = ' replace_many' ,
241+ },
242+ replace_object_many = {
243+ func = ' crud.replace_object_many' ,
244+ args = {
245+ space_name ,
246+ {
247+ { id = 22 , name = ' Peter' , last_name = ' Ivanov' , age = 40 , city = ' Moscow' },
248+ { id = 32 , name = ' Ivan' , last_name = ' Petrov' , age = 35 , city = ' Moscow' },
249+ }
250+ },
251+ op = ' replace_many' ,
252+ },
209253 update = {
210254 prepare = function (g )
211255 helpers .insert_objects (g , space_name , {{
@@ -235,6 +279,28 @@ local simple_operation_cases = {
235279 },
236280 op = ' upsert' ,
237281 },
282+ upsert_many = {
283+ func = ' crud.upsert_many' ,
284+ args = {
285+ space_name ,
286+ {
287+ {{ 26 , box .NULL , ' Ivan' , ' Ivanov' , 20 , ' Moscow' }, {{' +' , ' age' , 1 }}},
288+ {{ 36 , box .NULL , ' Oleg' , ' Petrov' , 25 , ' Moscow' }, {{' +' , ' age' , 1 }}},
289+ },
290+ },
291+ op = ' upsert_many' ,
292+ },
293+ upsert_object_many = {
294+ func = ' crud.upsert_object_many' ,
295+ args = {
296+ space_name ,
297+ {
298+ {{ id = 27 , name = ' Ivan' , last_name = ' Ivanov' , age = 20 , city = ' Moscow' }, {{' +' , ' age' , 1 }}},
299+ {{ id = 37 , name = ' Oleg' , last_name = ' Petrov' , age = 25 , city = ' Moscow' }, {{' +' , ' age' , 1 }}},
300+ },
301+ },
302+ op = ' upsert_many' ,
303+ },
238304 delete = {
239305 func = ' crud.delete' ,
240306 args = { space_name , { 12 } },
@@ -277,6 +343,18 @@ local simple_operation_cases = {
277343 op = ' insert' ,
278344 expect_error = true ,
279345 },
346+ insert_many_error = {
347+ func = ' crud.insert_many' ,
348+ args = { space_name , {{ ' id' }} },
349+ op = ' insert_many' ,
350+ expect_error = true ,
351+ },
352+ insert_object_many_error = {
353+ func = ' crud.insert_object_many' ,
354+ args = { space_name , {{ ' id' }} },
355+ op = ' insert_many' ,
356+ expect_error = true ,
357+ },
280358 get_error = {
281359 func = ' crud.get' ,
282360 args = { space_name , { ' id' } },
@@ -308,6 +386,18 @@ local simple_operation_cases = {
308386 op = ' replace' ,
309387 expect_error = true ,
310388 },
389+ replace_many_error = {
390+ func = ' crud.replace_many' ,
391+ args = { space_name , {{ ' id' }} },
392+ op = ' replace_many' ,
393+ expect_error = true ,
394+ },
395+ replace_object_many_error = {
396+ func = ' crud.replace_object_many' ,
397+ args = { space_name , {{ ' id' }} },
398+ op = ' replace_many' ,
399+ expect_error = true ,
400+ },
311401 update_error = {
312402 func = ' crud.update' ,
313403 args = { space_name , { ' id' }, {{' +' , ' age' , 1 }} },
@@ -326,6 +416,18 @@ local simple_operation_cases = {
326416 op = ' upsert' ,
327417 expect_error = true ,
328418 },
419+ upsert_many_error = {
420+ func = ' crud.upsert_many' ,
421+ args = { space_name , { {{ ' id' }, {{' +' , ' age' , 1 }}} }, },
422+ op = ' upsert_many' ,
423+ expect_error = true ,
424+ },
425+ upsert_object_many_error = {
426+ func = ' crud.upsert_object_many' ,
427+ args = { space_name , { {{ ' id' }, {{' +' , ' age' , 1 }}} } },
428+ op = ' upsert_many' ,
429+ expect_error = true ,
430+ },
329431 delete_error = {
330432 func = ' crud.delete' ,
331433 args = { space_name , { ' id' } },
@@ -800,8 +902,8 @@ local function validate_metrics(g, metrics)
800902 t .assert_type (stats_sum , ' table' , ' `tnt_crud_stats` summary metrics found' )
801903
802904
803- local expected_operations = { ' insert' , ' get' , ' replace' , ' update' ,
804- ' upsert' , ' delete' , ' select' , ' truncate' , ' len' , ' count' , ' borders' }
905+ local expected_operations = { ' insert' , ' insert_many ' , ' get' , ' replace' , ' replace_many ' , ' update' ,
906+ ' upsert' , ' upsert_many ' , ' delete' , ' select' , ' truncate' , ' len' , ' count' , ' borders' }
805907
806908 if g .params .quantiles == true then
807909 t .assert_items_equals (get_unique_label_values (quantile_stats , ' operation' ), expected_operations ,
0 commit comments