aboutsummaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorHisham <hisham@gobolinux.org>2016-10-14 16:38:51 -0700
committerHisham <hisham@gobolinux.org>2016-10-14 16:38:51 -0700
commit075196e8b5d315888a8ae110fa9a18089044ae3b (patch)
treeeca3eb78c23f8d85dbe625564a2d66966d6281f1 /test
parentdbca97cdcc15e386554b2631a0ae7aca02500abf (diff)
parent1fea0e3a0972bcc6b4319cd3d9e79834562486bc (diff)
downloadluarocks-075196e8b5d315888a8ae110fa9a18089044ae3b.tar.gz
luarocks-075196e8b5d315888a8ae110fa9a18089044ae3b.tar.bz2
luarocks-075196e8b5d315888a8ae110fa9a18089044ae3b.zip
Merge branch 'master' into luarocks-3
Diffstat (limited to 'test')
-rw-r--r--test/README.md11
-rw-r--r--test/test_environment.lua199
-rw-r--r--test/testing.bat9
3 files changed, 162 insertions, 57 deletions
diff --git a/test/README.md b/test/README.md
index c374438f..5deaa175 100644
--- a/test/README.md
+++ b/test/README.md
@@ -12,7 +12,7 @@ Test suite for LuaRocks project with Busted unit testing framework(http://olivin
12 12
13 13
14##Usage 14##Usage
15Running of tests is based on basic Busted usage. *-Xhelper* flag is mandatory for inserting arguments into testing (primary black-box). Flag *--tags=* or *-t* is mandatory for specifying which tests will run. Mandatory *-Xhelper* flag always needs version of Lua or LuaJIT (e.g. *lua=5.2.4* or *luajit=2.0.3*). Start tests inside LuaRocks folder or specify with *-C* flag. 15Running of tests is based on basic Busted usage. *-Xhelper* flag is mandatory for inserting arguments into testing (primary black-box). Flag *--tags=* or *-t* is mandatory for specifying which tests will run. Start tests inside LuaRocks folder or specify with *-C* flag.
16 16
17**Arguments for Busted helper script** 17**Arguments for Busted helper script**
18 18
@@ -22,7 +22,9 @@ OR
22luajit=<version>, !mandatory! type your full version of LuaJIT (e.g. luajit=5.2.4) 22luajit=<version>, !mandatory! type your full version of LuaJIT (e.g. luajit=5.2.4)
23 23
24env=<type>, (default:"minimal") type what kind of environment to use ["minimal", "full"] 24env=<type>, (default:"minimal") type what kind of environment to use ["minimal", "full"]
25noreset, Don't reset environment after each test
25clean, remove existing testing environment 26clean, remove existing testing environment
27appveyor, add just if running on TravisCI
26travis, add just if running on TravisCI 28travis, add just if running on TravisCI
27os=<version>, type your OS ["linux", "os x", "windows"] 29os=<version>, type your OS ["linux", "os x", "windows"]
28``` 30```
@@ -35,6 +37,10 @@ os=<version>, type your OS ["linux", "os x", "windows"]
35 37
36**ssh** - run all tests which require ssh 38**ssh** - run all tests which require ssh
37 39
40**mock** - run all tests which require mock LuaRocks server (upload tests)
41
42**unix** - run all tests which are UNIX based, won't work on Windows systems
43
38**w**\_*name-of-command* - whitebox testing of command 44**w**\_*name-of-command* - whitebox testing of command
39 45
40**b**\_*name-of-command* - blackbox testing of command 46**b**\_*name-of-command* - blackbox testing of command
@@ -42,6 +48,9 @@ os=<version>, type your OS ["linux", "os x", "windows"]
42for example: `b_install` or `w_help` 48for example: `b_install` or `w_help`
43 49
44###Examples 50###Examples
51To run all tests:
52`busted`
53
45To run white-box tests in LuaRocks directory type : 54To run white-box tests in LuaRocks directory type :
46 55
47`busted -t "whitebox"` 56`busted -t "whitebox"`
diff --git a/test/test_environment.lua b/test/test_environment.lua
index c26c1e87..799e13ec 100644
--- a/test/test_environment.lua
+++ b/test/test_environment.lua
@@ -17,6 +17,7 @@ ARGUMENTS
17 noreset Don't reset environment after each test 17 noreset Don't reset environment after each test
18 clean Remove existing testing environment. 18 clean Remove existing testing environment.
19 travis Add if running on TravisCI. 19 travis Add if running on TravisCI.
20 appveyor Add if running on Appveyor.
20 os=<type> Set OS ("linux", "osx", or "windows"). 21 os=<type> Set OS ("linux", "osx", or "windows").
21]] 22]]
22 23
@@ -36,18 +37,54 @@ local function exists(path)
36 return lfs.attributes(path, "mode") ~= nil 37 return lfs.attributes(path, "mode") ~= nil
37end 38end
38 39
39function test_env.quiet(commad) 40--- Quote argument for shell processing. Fixes paths on Windows.
41-- Adds double quotes and escapes. Based on function in fs/win32.lua.
42-- @param arg string: Unquoted argument.
43-- @return string: Quoted argument.
44local function Q(arg)
45 if test_env.TEST_TARGET_OS == "windows" then
46 local drive_letter = "[%.a-zA-Z]?:?[\\/]"
47 -- Quote DIR for Windows
48 if arg:match("^"..drive_letter) then
49 arg = arg:gsub("/", "\\")
50 end
51
52 if arg == "\\" then
53 return '\\' -- CHDIR needs special handling for root dir
54 end
55
56 return '"' .. arg .. '"'
57 else
58 return "'" .. arg:gsub("'", "'\\''") .. "'"
59 end
60end
61
62function test_env.quiet(command)
40 if not test_env.VERBOSE then 63 if not test_env.VERBOSE then
41 if test_env.TEST_TARGET_OS == "linux" or test_env.TEST_TARGET_OS == "osx" then 64 if test_env.TEST_TARGET_OS == "windows" then
42 return commad .. " 1> /dev/null 2> /dev/null" 65 return command .. " 1> NUL 2> NUL"
43 elseif test_env.TEST_TARGET_OS == "windows" then 66 else
44 return commad .. " 2> NUL 1> NUL" 67 return command .. " 1> /dev/null 2> /dev/null"
45 end 68 end
46 else 69 else
47 return command 70 return command
48 end 71 end
49end 72end
50 73
74function test_env.copy(source, destination)
75 local r_source, err = io.open(source, "r")
76 local r_destination, err = io.open(destination, "w")
77
78 while true do
79 local block = r_source:read(8192)
80 if not block then break end
81 r_destination:write(block)
82 end
83
84 r_source:close()
85 r_destination:close()
86end
87
51--- Helper function for execute_bool and execute_output 88--- Helper function for execute_bool and execute_output
52-- @param command string: command to execute 89-- @param command string: command to execute
53-- @param print_command boolean: print command if 'true' 90-- @param print_command boolean: print command if 'true'
@@ -61,27 +98,50 @@ function test_env.execute_helper(command, print_command, env_variables)
61 end 98 end
62 99
63 if env_variables then 100 if env_variables then
64 final_command = "export " 101 if test_env.TEST_TARGET_OS == "windows" then
65 for k,v in pairs(env_variables) do 102 for k,v in pairs(env_variables) do
66 final_command = final_command .. k .. "='" .. v .. "' " 103 final_command = final_command .. "set " .. k .. "=" .. v .. "&"
104 end
105 final_command = final_command:sub(1, -2) .. "&"
106 else
107 final_command = "export "
108 for k,v in pairs(env_variables) do
109 final_command = final_command .. k .. "='" .. v .. "' "
110 end
111 -- remove last space and add ';' to separate exporting variables from command
112 final_command = final_command:sub(1, -2) .. "; "
67 end 113 end
68 -- remove last space and add ';' to separate exporting variables from command
69 final_command = final_command:sub(1, -2) .. "; "
70 end 114 end
71 115
72 final_command = final_command .. command 116 final_command = final_command .. command .. " 2>&1"
73 117
74 return final_command 118 return final_command
75end 119end
76 120
77--- Execute command and returns true/false 121--- Execute command and returns true/false
78-- In Lua5.1 os.execute returns numeric value, but in Lua5.2+ returns boolean
79-- @return true/false boolean: status of the command execution 122-- @return true/false boolean: status of the command execution
80local function execute_bool(command, print_command, env_variables) 123local function execute_bool(command, print_command, env_variables)
81 command = test_env.execute_helper(command, print_command, env_variables) 124 command = test_env.execute_helper(command, print_command, env_variables)
82 125
83 local ok = os.execute(command) 126 local redirect_filename
84 return ok == true or ok == 0 127 local redirect = ""
128 if print_command ~= nil then
129 redirect_filename = test_env.testing_paths.luarocks_tmp.."/output.txt"
130 redirect = " > "..redirect_filename
131 end
132 local ok = os.execute(command .. redirect)
133 ok = (ok == true or ok == 0) -- normalize Lua 5.1 output to boolean
134 if redirect ~= "" then
135 if not ok then
136 local fd = io.open(redirect_filename, "r")
137 if fd then
138 print(fd:read("*a"))
139 fd:close()
140 end
141 end
142 os.remove(redirect_filename)
143 end
144 return ok
85end 145end
86 146
87--- Execute command and returns output of command 147--- Execute command and returns output of command
@@ -109,6 +169,7 @@ end
109function test_env.set_args() 169function test_env.set_args()
110 -- if at least Lua/LuaJIT version argument was found on input start to parse other arguments to env. variables 170 -- if at least Lua/LuaJIT version argument was found on input start to parse other arguments to env. variables
111 test_env.TYPE_TEST_ENV = "minimal" 171 test_env.TYPE_TEST_ENV = "minimal"
172 test_env.OPENSSL_DIRS = ""
112 test_env.RESET_ENV = true 173 test_env.RESET_ENV = true
113 174
114 for _, argument in ipairs(arg) do 175 for _, argument in ipairs(arg) do
@@ -122,8 +183,15 @@ function test_env.set_args()
122 test_env.VERBOSE = true 183 test_env.VERBOSE = true
123 elseif argument == "travis" then 184 elseif argument == "travis" then
124 test_env.TRAVIS = true 185 test_env.TRAVIS = true
186 elseif argument == "appveyor" then
187 test_env.APPVEYOR = true
188 test_env.OPENSSL_DIRS = "OPENSSL_LIBDIR=C:\\OpenSSL-Win32\\lib OPENSSL_INCDIR=C:\\OpenSSL-Win32\\include"
125 elseif argument:find("^os=") then 189 elseif argument:find("^os=") then
126 test_env.TEST_TARGET_OS = argument:match("^os=(.*)$") 190 test_env.TEST_TARGET_OS = argument:match("^os=(.*)$")
191 elseif argument == "mingw" then
192 test_env.MINGW = true
193 elseif argument == "vs" then
194 test_env.MINGW = false
127 else 195 else
128 help() 196 help()
129 end 197 end
@@ -134,7 +202,7 @@ function test_env.set_args()
134 202
135 if execute_bool("sw_vers") then 203 if execute_bool("sw_vers") then
136 test_env.TEST_TARGET_OS = "osx" 204 test_env.TEST_TARGET_OS = "osx"
137 elseif execute_bool("uname -s") then 205 elseif execute_output("uname -s") == "Linux" then
138 test_env.TEST_TARGET_OS = "linux" 206 test_env.TEST_TARGET_OS = "linux"
139 else 207 else
140 test_env.TEST_TARGET_OS = "windows" 208 test_env.TEST_TARGET_OS = "windows"
@@ -143,6 +211,15 @@ function test_env.set_args()
143 return true 211 return true
144end 212end
145 213
214local function copy_dir(source_path, target_path)
215 local testing_paths = test_env.testing_paths
216 if test_env.TEST_TARGET_OS == "windows" then
217 execute_bool(testing_paths.win_tools .. "/cp -R ".. source_path .. "/. " .. target_path)
218 else
219 execute_bool("cp -a ".. source_path .. "/. " .. target_path)
220 end
221end
222
146--- Remove directory recursively 223--- Remove directory recursively
147-- @param path string: directory path to delete 224-- @param path string: directory path to delete
148function test_env.remove_dir(path) 225function test_env.remove_dir(path)
@@ -159,7 +236,7 @@ function test_env.remove_dir(path)
159 end 236 end
160 end 237 end
161 end 238 end
162 os.remove(path) 239 lfs.rmdir(path)
163end 240end
164 241
165--- Remove subdirectories of a directory that match a pattern 242--- Remove subdirectories of a directory that match a pattern
@@ -205,13 +282,17 @@ end
205-- @param save_path string: path to directory, where to download rocks/rockspecs 282-- @param save_path string: path to directory, where to download rocks/rockspecs
206-- @return make_manifest boolean: true if new rocks downloaded 283-- @return make_manifest boolean: true if new rocks downloaded
207local function download_rocks(urls, save_path) 284local function download_rocks(urls, save_path)
208 local luarocks_repo = "https://luarocks.org" 285 local luarocks_repo = "https://www.luarocks.org"
209 local make_manifest = false 286 local make_manifest = false
210 287
211 for _, url in ipairs(urls) do 288 for _, url in ipairs(urls) do
212 -- check if already downloaded 289 -- check if already downloaded
213 if not exists(save_path .. url) then 290 if not exists(save_path .. url) then
214 execute_bool("wget -cP " .. save_path .. " " .. luarocks_repo .. url) 291 if test_env.TEST_TARGET_OS == "windows" then
292 execute_bool(test_env.testing_paths.win_tools .. "/wget -cP " .. save_path .. " " .. luarocks_repo .. url .. " --no-check-certificate")
293 else
294 execute_bool("wget -cP " .. save_path .. " " .. luarocks_repo .. url)
295 end
215 make_manifest = true 296 make_manifest = true
216 end 297 end
217 end 298 end
@@ -235,9 +316,9 @@ local function hash_environment(path)
235 return execute_output("find " .. path .. " -printf \"%s %p\n\" | md5sum") 316 return execute_output("find " .. path .. " -printf \"%s %p\n\" | md5sum")
236 elseif test_env.TEST_TARGET_OS == "osx" then 317 elseif test_env.TEST_TARGET_OS == "osx" then
237 return execute_output("find " .. path .. " -type f -exec stat -f \"%z %N\" {} \\; | md5") 318 return execute_output("find " .. path .. " -type f -exec stat -f \"%z %N\" {} \\; | md5")
238 else 319 elseif test_env.TEST_TARGET_OS == "windows" then
239 -- TODO: Windows 320 return execute_output("\"" .. Q(test_env.testing_paths.win_tools .. "/find") .. " " .. Q(path)
240 return "" 321 .. " -printf \"%s %p\"\" > temp_sum.txt && certUtil -hashfile temp_sum.txt && del temp_sum.txt")
241 end 322 end
242end 323end
243 324
@@ -261,7 +342,7 @@ local function create_env(testing_paths)
261 env_variables.LUA_PATH = env_variables.LUA_PATH .. testing_paths.src_dir .. "/?.lua;" 342 env_variables.LUA_PATH = env_variables.LUA_PATH .. testing_paths.src_dir .. "/?.lua;"
262 env_variables.LUA_CPATH = testing_paths.testing_tree .. "/lib/lua/" .. luaversion_short .. "/?.so;" 343 env_variables.LUA_CPATH = testing_paths.testing_tree .. "/lib/lua/" .. luaversion_short .. "/?.so;"
263 .. testing_paths.testing_sys_tree .. "/lib/lua/" .. luaversion_short .. "/?.so;" 344 .. testing_paths.testing_sys_tree .. "/lib/lua/" .. luaversion_short .. "/?.so;"
264 env_variables.PATH = os.getenv("PATH") .. ":" .. testing_paths.testing_tree .. "/bin:" .. testing_paths.testing_sys_tree .. "/bin" 345 env_variables.PATH = os.getenv("PATH") .. ";" .. testing_paths.testing_tree .. "/bin;" .. testing_paths.testing_sys_tree .. "/bin;"
265 346
266 return env_variables 347 return env_variables
267end 348end
@@ -278,13 +359,17 @@ local function create_md5sums(testing_paths)
278end 359end
279 360
280local function make_run_function(cmd_name, exec_function, with_coverage, do_print) 361local function make_run_function(cmd_name, exec_function, with_coverage, do_print)
281 local cmd_prefix = test_env.testing_paths.lua .. " " 362 local cmd_prefix = Q(test_env.testing_paths.lua) .. " "
282 363
283 if with_coverage then 364 if with_coverage then
284 cmd_prefix = cmd_prefix .. "-e \"require('luacov.runner')('" .. test_env.testing_paths.testing_dir .. "/luacov.config')\" " 365 cmd_prefix = cmd_prefix .. "-e \"require('luacov.runner')('" .. test_env.testing_paths.testing_dir .. "/luacov.config')\" "
285 end 366 end
286 367
287 cmd_prefix = cmd_prefix .. test_env.testing_paths.src_dir .. "/bin/" .. cmd_name .. " " 368 if test_env.TEST_TARGET_OS == "windows" then
369 cmd_prefix = cmd_prefix .. Q(test_env.testing_paths.testing_lrprefix .. "/" .. cmd_name .. ".lua") .. " "
370 else
371 cmd_prefix = cmd_prefix .. test_env.testing_paths.src_dir .. "/bin/" .. cmd_name .. " "
372 end
288 373
289 return function(cmd, new_vars) 374 return function(cmd, new_vars)
290 local temp_vars = {} 375 local temp_vars = {}
@@ -327,19 +412,23 @@ local function build_environment(rocks, env_variables)
327 lfs.mkdir(testing_paths.testing_tree) 412 lfs.mkdir(testing_paths.testing_tree)
328 lfs.mkdir(testing_paths.testing_sys_tree) 413 lfs.mkdir(testing_paths.testing_sys_tree)
329 414
330 test_env.run.luarocks_admin_nocov("make_manifest " .. testing_paths.testing_server) 415 test_env.run.luarocks_admin_nocov("make_manifest " .. Q(testing_paths.testing_server))
331 test_env.run.luarocks_admin_nocov("make_manifest " .. testing_paths.testing_cache) 416 test_env.run.luarocks_admin_nocov("make_manifest " .. Q(testing_paths.testing_cache))
332 417
333 for _, rock in ipairs(rocks) do 418 for _, rock in ipairs(rocks) do
334 if not test_env.run.luarocks_nocov("install --only-server=" .. testing_paths.testing_cache .. " --tree=" .. testing_paths.testing_sys_tree .. " " .. rock, env_variables) then 419 if not test_env.run.luarocks_nocov("install --only-server=" .. testing_paths.testing_cache .. " --tree=" .. testing_paths.testing_sys_tree .. " " .. Q(rock), env_variables) then
335 test_env.run.luarocks_nocov("build --tree=" .. testing_paths.testing_sys_tree .. " " .. rock, env_variables) 420 test_env.run.luarocks_nocov("build --tree=" .. Q(testing_paths.testing_sys_tree) .. " " .. Q(rock) .. "", env_variables)
336 test_env.run.luarocks_nocov("pack --tree=" .. testing_paths.testing_sys_tree .. " " .. rock, env_variables) 421 test_env.run.luarocks_nocov("pack --tree=" .. Q(testing_paths.testing_sys_tree) .. " " .. Q(rock), env_variables)
337 execute_bool("mv " .. rock .. "-*.rock " .. testing_paths.testing_cache) 422 if test_env.TEST_TARGET_OS == "windows" then
423 execute_bool(testing_paths.win_tools .. "/mv " .. rock .. "-*.rock " .. testing_paths.testing_cache)
424 else
425 execute_bool("mv " .. rock .. "-*.rock " .. testing_paths.testing_cache)
426 end
338 end 427 end
339 end 428 end
340 429
341 execute_bool("cp -a " .. testing_paths.testing_tree .. "/. " .. testing_paths.testing_tree_copy) 430 copy_dir(testing_paths.testing_tree, testing_paths.testing_tree_copy)
342 execute_bool("cp -a " .. testing_paths.testing_sys_tree .. "/. " .. testing_paths.testing_sys_tree_copy) 431 copy_dir(testing_paths.testing_sys_tree, testing_paths.testing_sys_tree_copy)
343end 432end
344 433
345--- Reset testing environment 434--- Reset testing environment
@@ -349,14 +438,13 @@ local function reset_environment(testing_paths, md5sums)
349 438
350 if testing_tree_md5 ~= md5sums.testing_tree_copy_md5 then 439 if testing_tree_md5 ~= md5sums.testing_tree_copy_md5 then
351 test_env.remove_dir(testing_paths.testing_tree) 440 test_env.remove_dir(testing_paths.testing_tree)
352 execute_bool("cp -a " .. testing_paths.testing_tree_copy .. "/. " .. testing_paths.testing_tree) 441 copy_dir(testing_paths.testing_tree_copy, testing_paths.testing_tree)
353 end 442 end
354 443
355 if testing_sys_tree_md5 ~= md5sums.testing_sys_tree_copy_md5 then 444 if testing_sys_tree_md5 ~= md5sums.testing_sys_tree_copy_md5 then
356 test_env.remove_dir(testing_paths.testing_sys_tree) 445 test_env.remove_dir(testing_paths.testing_sys_tree)
357 execute_bool("cp -a " .. testing_paths.testing_sys_tree_copy .. "/. " .. testing_paths.testing_sys_tree) 446 copy_dir(testing_paths.testing_sys_tree_copy, testing_paths.testing_sys_tree)
358 end 447 end
359
360 print("\n[ENVIRONMENT RESET]") 448 print("\n[ENVIRONMENT RESET]")
361end 449end
362 450
@@ -367,9 +455,18 @@ local function create_paths(luaversion_full)
367 testing_paths.luadir = cfg.variables.LUA_BINDIR:gsub("/bin/?$", "") 455 testing_paths.luadir = cfg.variables.LUA_BINDIR:gsub("/bin/?$", "")
368 testing_paths.lua = cfg.variables.LUA_BINDIR .. "/" .. cfg.lua_interpreter 456 testing_paths.lua = cfg.variables.LUA_BINDIR .. "/" .. cfg.lua_interpreter
369 457
370 testing_paths.luarocks_tmp = "/tmp/luarocks_testing" --windows? 458 if test_env.TEST_TARGET_OS == "windows" then
459 testing_paths.luarocks_tmp = os.getenv("TEMP")
460 else
461 testing_paths.luarocks_tmp = "/tmp/luarocks_testing"
462 end
371 463
372 testing_paths.luarocks_dir = lfs.currentdir() 464 testing_paths.luarocks_dir = lfs.currentdir()
465
466 if test_env.TEST_TARGET_OS == "windows" then
467 testing_paths.luarocks_dir = testing_paths.luarocks_dir:gsub("\\","/")
468 end
469
373 testing_paths.testing_dir = testing_paths.luarocks_dir .. "/test" 470 testing_paths.testing_dir = testing_paths.luarocks_dir .. "/test"
374 testing_paths.src_dir = testing_paths.luarocks_dir .. "/src" 471 testing_paths.src_dir = testing_paths.luarocks_dir .. "/src"
375 testing_paths.testing_lrprefix = testing_paths.testing_dir .. "/testing_lrprefix-" .. luaversion_full 472 testing_paths.testing_lrprefix = testing_paths.testing_dir .. "/testing_lrprefix-" .. luaversion_full
@@ -380,6 +477,10 @@ local function create_paths(luaversion_full)
380 testing_paths.testing_cache = testing_paths.testing_dir .. "/testing_cache-" .. luaversion_full 477 testing_paths.testing_cache = testing_paths.testing_dir .. "/testing_cache-" .. luaversion_full
381 testing_paths.testing_server = testing_paths.testing_dir .. "/testing_server-" .. luaversion_full 478 testing_paths.testing_server = testing_paths.testing_dir .. "/testing_server-" .. luaversion_full
382 479
480 if test_env.TEST_TARGET_OS == "windows" then
481 testing_paths.win_tools = testing_paths.testing_lrprefix .. "/tools"
482 end
483
383 return testing_paths 484 return testing_paths
384end 485end
385 486
@@ -546,13 +647,19 @@ end
546 647
547--- Install luarocks into testing prefix. 648--- Install luarocks into testing prefix.
548local function install_luarocks(install_env_vars) 649local function install_luarocks(install_env_vars)
549 -- Configure LuaRocks testing environment 650 local testing_paths = test_env.testing_paths
550 title("Installing LuaRocks") 651 title("Installing LuaRocks")
551 local configure_cmd = "./configure --with-lua=" .. test_env.testing_paths.luadir .. " --prefix=" .. test_env.testing_paths.testing_lrprefix 652 if test_env.TEST_TARGET_OS == "windows" then
552 assert(execute_bool(test_env.quiet(configure_cmd), false, install_env_vars)) 653 local compiler_flag = test_env.MINGW and "/MW" or ""
553 assert(execute_bool(test_env.quiet("make clean"), false, install_env_vars)) 654 assert(execute_bool("install.bat /LUA " .. testing_paths.luadir .. " " .. compiler_flag .. " /P " .. testing_paths.testing_lrprefix .. " /NOREG /NOADMIN /F /Q /CONFIG " .. testing_paths.testing_lrprefix .. "/etc/luarocks", false, install_env_vars))
554 assert(execute_bool(test_env.quiet("make src/luarocks/site_config.lua"), false, install_env_vars)) 655 assert(execute_bool(testing_paths.win_tools .. "/cp " .. testing_paths.testing_lrprefix .. "/lua/luarocks/site_config* " .. testing_paths.src_dir .. "/luarocks/site_config.lua"))
555 assert(execute_bool(test_env.quiet("make dev"), false, install_env_vars)) 656 else
657 local configure_cmd = "./configure --with-lua=" .. testing_paths.luadir .. " --prefix=" .. testing_paths.testing_lrprefix
658 assert(execute_bool(configure_cmd, false, install_env_vars))
659 assert(execute_bool("make clean", false, install_env_vars))
660 assert(execute_bool("make src/luarocks/site_config.lua", false, install_env_vars))
661 assert(execute_bool("make dev", false, install_env_vars))
662 end
556 print("LuaRocks installed correctly!") 663 print("LuaRocks installed correctly!")
557end 664end
558 665
@@ -571,9 +678,7 @@ function test_env.main()
571 create_configs() 678 create_configs()
572 679
573 local install_env_vars = { 680 local install_env_vars = {
574 LUAROCKS_CONFIG = test_env.testing_paths.testing_dir .. "/testing_config.lua", 681 LUAROCKS_CONFIG = test_env.testing_paths.testing_dir .. "/testing_config.lua"
575 LUA_PATH = "",
576 LUA_CPATH = ""
577 } 682 }
578 683
579 install_luarocks(install_env_vars) 684 install_luarocks(install_env_vars)
diff --git a/test/testing.bat b/test/testing.bat
deleted file mode 100644
index 7083678b..00000000
--- a/test/testing.bat
+++ /dev/null
@@ -1,9 +0,0 @@
1@echo off
2Setlocal EnableDelayedExpansion EnableExtensions
3
4if not defined LUAROCKS_REPO set LUAROCKS_REPO=https://luarocks.org
5
6appveyor DownloadFile %LUAROCKS_REPO%/stdlib-41.0.0-1.src.rock
7luarocks build stdlib
8
9endlocal