[Tarantool-patches] [PATCH v1 6/7] tests: adjust LuaJIT-test-cleanup for Tarantool
imeevma at tarantool.org
imeevma at tarantool.org
Wed Jan 20 18:10:11 MSK 2021
This patch makes it possible to run LuaJIT-test-cleanup test suite using
Tarantool.
Part of tarantool/tarantool#4064
---
test/LuaJIT-test-cleanup/CMakeLists.txt | 2 +-
test/LuaJIT-test-cleanup/lang/assignment.lua | 6 +-
test/LuaJIT-test-cleanup/lang/meta/cat.lua | 2 +-
.../lang/meta/newindex.lua | 2 +-
test/LuaJIT-test-cleanup/lib/contents.lua | 4 +-
test/LuaJIT-test-cleanup/test.lua | 9 +
test/LuaJIT-test-cleanup/tests_list | 508 ++++++++++++++++++
7 files changed, 525 insertions(+), 8 deletions(-)
create mode 100644 test/LuaJIT-test-cleanup/tests_list
diff --git a/test/LuaJIT-test-cleanup/CMakeLists.txt b/test/LuaJIT-test-cleanup/CMakeLists.txt
index a40d028..c309f5c 100644
--- a/test/LuaJIT-test-cleanup/CMakeLists.txt
+++ b/test/LuaJIT-test-cleanup/CMakeLists.txt
@@ -6,7 +6,7 @@ add_custom_command(
OUTPUT tests.ok
DEPENDS ${LUAJIT_TEST_BINARY}
COMMAND
- ${LUAJIT_TEST_BINARY} ${CMAKE_CURRENT_SOURCE_DIR}/test.lua
+ ${LUAJIT_TEST_BINARY} ${CMAKE_CURRENT_SOURCE_DIR}/test.lua `cat tests_list`
&& touch tests.ok
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
)
diff --git a/test/LuaJIT-test-cleanup/lang/assignment.lua b/test/LuaJIT-test-cleanup/lang/assignment.lua
index e9745ef..6a24e6c 100644
--- a/test/LuaJIT-test-cleanup/lang/assignment.lua
+++ b/test/LuaJIT-test-cleanup/lang/assignment.lua
@@ -19,14 +19,14 @@ do --- global !private_G
a, b, c = 0, 1
assert(a == 0)
assert(b == 1)
- assert(c == nil)
+ assert(variable_exists('c') == nil)
a, b = a+1, b+1, a+b
assert(a == 1)
assert(b == 2)
a, b, c = 0
assert(a == 0)
- assert(b == nil)
- assert(c == nil)
+ assert(variable_exists('b') == nil)
+ assert(variable_exists('c') == nil)
end
do --- local lhs in key on lhs
diff --git a/test/LuaJIT-test-cleanup/lang/meta/cat.lua b/test/LuaJIT-test-cleanup/lang/meta/cat.lua
index 48a89e4..1368f16 100644
--- a/test/LuaJIT-test-cleanup/lang/meta/cat.lua
+++ b/test/LuaJIT-test-cleanup/lang/meta/cat.lua
@@ -46,7 +46,7 @@ end
do --- jit mixed types
local a, b = create(function(a, b)
- if a ~= b then local x = gg end
+ if a ~= b then local x = variable_exists('gg') end
return (type(a) == "string" and a or a[1])..
(type(b) == "string" and b or b[1])
end, "a", "b")
diff --git a/test/LuaJIT-test-cleanup/lang/meta/newindex.lua b/test/LuaJIT-test-cleanup/lang/meta/newindex.lua
index 6c46b8c..e7e4737 100644
--- a/test/LuaJIT-test-cleanup/lang/meta/newindex.lua
+++ b/test/LuaJIT-test-cleanup/lang/meta/newindex.lua
@@ -46,7 +46,7 @@ do --- resize
setmetatable(parent, grandparent)
local child = setmetatable({}, parent)
- child.foo = _
+ child.foo = variable_exists('_')
end
do --- str
diff --git a/test/LuaJIT-test-cleanup/lib/contents.lua b/test/LuaJIT-test-cleanup/lib/contents.lua
index 45c07eb..46a9232 100644
--- a/test/LuaJIT-test-cleanup/lib/contents.lua
+++ b/test/LuaJIT-test-cleanup/lib/contents.lua
@@ -43,11 +43,11 @@ do --- 5.2 base +lua>=5.2
end
do --- pre-5.2 base rawlen -compat5.2
- assert(not rawlen)
+ assert(not variable_exists('rawlen'))
end
do --- 5.2 base rawlen +compat5.2
- assert(rawlen)
+ assert(variable_exists('rawlen'))
end
do --- math
diff --git a/test/LuaJIT-test-cleanup/test.lua b/test/LuaJIT-test-cleanup/test.lua
index b064eff..df4854c 100644
--- a/test/LuaJIT-test-cleanup/test.lua
+++ b/test/LuaJIT-test-cleanup/test.lua
@@ -401,6 +401,15 @@ local function execute_plan(plan, opts)
end
end
+function variable_exists (name)
+ for k,_ in pairs(_G) do
+ if (k == name) then
+ return _G[name]
+ end
+ end
+ return nil
+end
+
local opts = parse_args{...}
if not opts then
return
diff --git a/test/LuaJIT-test-cleanup/tests_list b/test/LuaJIT-test-cleanup/tests_list
new file mode 100644
index 0000000..5bcfef6
--- /dev/null
+++ b/test/LuaJIT-test-cleanup/tests_list
@@ -0,0 +1,508 @@
+1
+2
+3
+4
+5
+6
+7
+8
+9
+10
+11
+12
+13
+14
+15
+16
+17
+18
+19
+20
+21
+22
+23
+24
+25
+26
+27
+28
+29
+30
+31
+32
+33
+34
+35
+36
+37
+38
+39
+40
+41
+42
+43
+44
+45
+46
+47
+48
+49
+50
+51
+52
+53
+54
+55
+56
+57
+58
+59
+60
+61
+62
+63
+64
+65
+66
+67
+68
+69
+70
+71
+72
+73
+74
+75
+76
+77
+78
+79
+80
+81
+82
+83
+84
+85
+86
+87
+88
+89
+90
+91
+92
+93
+94
+95
+96
+97
+98
+99
+100
+101
+102
+103
+104
+105
+106
+107
+108
+109
+110
+111
+112
+113
+114
+115
+116
+117
+118
+119
+120
+121
+122
+123
+124
+125
+126
+127
+128
+129
+130
+131
+132
+133
+134
+135
+136
+137
+138
+139
+140
+141
+142
+143
+144
+145
+146
+147
+148
+149
+150
+151
+152
+153
+154
+155
+156
+157
+158
+159
+160
+161
+162
+163
+164
+165
+166
+167
+168
+169
+170
+171
+172
+173
+174
+175
+176
+177
+178
+179
+180
+181
+182
+183
+184
+185
+186
+187
+188
+189
+190
+191
+192
+193
+194
+195
+196
+197
+198
+199
+200
+201
+202
+203
+204
+205
+206
+207
+208
+209
+210
+211
+212
+213
+214
+215
+216
+217
+218
+219
+220
+221
+222
+223
+224
+225
+226
+227
+228
+229
+230
+231
+232
+233
+234
+235
+236
+237
+238
+239
+240
+241
+242
+243
+244
+245
+246
+247
+248
+249
+250
+251
+252
+253
+254
+255
+256
+257
+258
+259
+260
+261
+262
+263
+264
+265
+266
+267
+268
+269
+270
+271
+272
+273
+274
+275
+276
+277
+278
+279
+280
+281
+282
+283
+284
+285
+286
+287
+288
+289
+290
+291
+292
+293
+294
+295
+296
+297
+298
+299
+300
+301
+302
+303
+304
+305
+306
+307
+308
+309
+310
+311
+312
+313
+314
+315
+316
+317
+318
+319
+320
+321
+322
+323
+324
+325
+326
+327
+328
+329
+330
+331
+332
+333
+334
+335
+336
+337
+338
+339
+340
+341
+342
+343
+344
+345
+346
+347
+348
+349
+350
+351
+352
+353
+354
+355
+356
+357
+358
+359
+360
+361
+362
+363
+364
+365
+366
+367
+368
+369
+370
+371
+372
+373
+374
+375
+376
+377
+378
+379
+380
+381
+382
+383
+384
+385
+386
+387
+388
+389
+390
+391
+392
+393
+394
+395
+396
+397
+398
+399
+400
+401
+402
+403
+404
+405
+406
+407
+408
+409
+410
+411
+412
+413
+414
+415
+416
+417
+418
+419
+420
+421
+422
+423
+424
+425
+426
+427
+428
+429
+430
+431
+432
+433
+434
+435
+436
+437
+438
+439
+440
+441
+442
+443
+444
+445
+446
+447
+448
+449
+450
+451
+452
+453
+454
+455
+456
+457
+458
+459
+460
+461
+462
+463
+464
+465
+466
+467
+468
+469
+470
+471
+472
+473
+474
+475
+476
+477
+478
+479
+480
+481
+482
+483
+484
+485
+486
+487
+488
+489
+490
+491
+492
+493
+494
+495
+496
+497
+498
+499
+500
+501
+502
+503
+504
+505
+506
+507
+508
--
2.25.1
More information about the Tarantool-patches
mailing list