aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Melnichenko <mpeterval@gmail.com>2016-07-08 16:47:28 +0300
committerPeter Melnichenko <mpeterval@gmail.com>2016-07-08 17:44:03 +0300
commit09315362c8c1eb78311586247ddd46f1add1aae6 (patch)
tree0059dbfe295b4c94aa1d1f8b354497d502debaa8
parent325c7578cdd5421035930a3a7ee2bb385c10d8fc (diff)
downloadluarocks-09315362c8c1eb78311586247ddd46f1add1aae6.tar.gz
luarocks-09315362c8c1eb78311586247ddd46f1add1aae6.tar.bz2
luarocks-09315362c8c1eb78311586247ddd46f1add1aae6.zip
Tests: add file/dir existence check utility function
Use it instead of os.rename(path, path).
-rw-r--r--test/test_environment.lua30
1 files changed, 16 insertions, 14 deletions
diff --git a/test/test_environment.lua b/test/test_environment.lua
index 065a12c2..a48a59a3 100644
--- a/test/test_environment.lua
+++ b/test/test_environment.lua
@@ -32,6 +32,10 @@ local function title(str)
32 print(("-"):rep(#str)) 32 print(("-"):rep(#str))
33end 33end
34 34
35local function exists(path)
36 return lfs.attributes(path, "mode") ~= nil
37end
38
35--- Helper function for execute_bool and execute_output 39--- Helper function for execute_bool and execute_output
36-- @param command string: command to execute 40-- @param command string: command to execute
37-- @param print_command boolean: print command if 'true' 41-- @param print_command boolean: print command if 'true'
@@ -125,7 +129,7 @@ end
125--- Remove directory recursively 129--- Remove directory recursively
126-- @param path string: directory path to delete 130-- @param path string: directory path to delete
127function test_env.remove_dir(path) 131function test_env.remove_dir(path)
128 if lfs.attributes(path) then 132 if exists(path) then
129 for file in lfs.dir(path) do 133 for file in lfs.dir(path) do
130 if file ~= "." and file ~= ".." then 134 if file ~= "." and file ~= ".." then
131 local full_path = path..'/'..file 135 local full_path = path..'/'..file
@@ -145,7 +149,7 @@ end
145-- @param path string: path to directory 149-- @param path string: path to directory
146-- @param pattern string: pattern matching basenames of subdirectories to be removed 150-- @param pattern string: pattern matching basenames of subdirectories to be removed
147function test_env.remove_subdirs(path, pattern) 151function test_env.remove_subdirs(path, pattern)
148 if lfs.attributes(path) then 152 if exists(path) then
149 for file in lfs.dir(path) do 153 for file in lfs.dir(path) do
150 if file ~= "." and file ~= ".." then 154 if file ~= "." and file ~= ".." then
151 local full_path = path..'/'..file 155 local full_path = path..'/'..file
@@ -164,7 +168,7 @@ end
164-- @return result_check boolean: true if one or more files deleted 168-- @return result_check boolean: true if one or more files deleted
165function test_env.remove_files(path, pattern) 169function test_env.remove_files(path, pattern)
166 local result_check = false 170 local result_check = false
167 if lfs.attributes(path) then 171 if exists(path) then
168 for file in lfs.dir(path) do 172 for file in lfs.dir(path) do
169 if file ~= "." and file ~= ".." then 173 if file ~= "." and file ~= ".." then
170 if file:find(pattern) then 174 if file:find(pattern) then
@@ -189,7 +193,7 @@ local function download_rocks(urls, save_path)
189 193
190 for _, url in ipairs(urls) do 194 for _, url in ipairs(urls) do
191 -- check if already downloaded 195 -- check if already downloaded
192 if not os.rename(save_path .. url, save_path .. url) then 196 if not exists(save_path .. url) then
193 execute_bool("wget -cP " .. save_path .. " " .. luarocks_repo .. url) 197 execute_bool("wget -cP " .. save_path .. " " .. luarocks_repo .. url)
194 make_manifest = true 198 make_manifest = true
195 end 199 end
@@ -346,21 +350,19 @@ local function create_paths(luaversion_full)
346 if test_env.TRAVIS then 350 if test_env.TRAVIS then
347 testing_paths.luadir = lfs.currentdir() .. "/lua_install" 351 testing_paths.luadir = lfs.currentdir() .. "/lua_install"
348 testing_paths.lua = testing_paths.luadir .. "/bin/lua" 352 testing_paths.lua = testing_paths.luadir .. "/bin/lua"
349 end 353 elseif test_env.LUA_V then
350 354 if exists("/usr/bin/lua") then
351 if test_env.LUA_V and not test_env.TRAVIS then
352 if lfs.attributes("/usr/bin/lua") then
353 testing_paths.luadir = "/usr" 355 testing_paths.luadir = "/usr"
354 testing_paths.lua = testing_paths.luadir .. "/bin/lua" 356 testing_paths.lua = testing_paths.luadir .. "/bin/lua"
355 elseif lfs.attributes("/usr/local/bin/lua") then 357 elseif exists("/usr/local/bin/lua") then
356 testing_paths.luadir = "/usr/local" 358 testing_paths.luadir = "/usr/local"
357 testing_paths.lua = testing_paths.luadir .. "/bin/lua" 359 testing_paths.lua = testing_paths.luadir .. "/bin/lua"
358 end 360 end
359 elseif test_env.LUAJIT_V and not test_env.TRAVIS then 361 elseif test_env.LUAJIT_V then
360 if lfs.attributes("/usr/bin/luajit") then 362 if exists("/usr/bin/luajit") then
361 testing_paths.luadir = "/usr" 363 testing_paths.luadir = "/usr"
362 testing_paths.lua = testing_paths.luadir .. "/bin/luajit" 364 testing_paths.lua = testing_paths.luadir .. "/bin/luajit"
363 elseif lfs.attributes("/usr/local/bin/luajit") then 365 elseif exists("/usr/local/bin/luajit") then
364 testing_paths.luadir = "/usr/local" 366 testing_paths.luadir = "/usr/local"
365 testing_paths.lua = testing_paths.luadir .. "/bin/luajit" 367 testing_paths.lua = testing_paths.luadir .. "/bin/luajit"
366 end 368 end
@@ -397,7 +399,7 @@ function test_env.setup_specs(extra_rocks)
397 -- if global variable about successful creation of testing environment doesn't exists, build environment 399 -- if global variable about successful creation of testing environment doesn't exists, build environment
398 if not test_env.setup_done then 400 if not test_env.setup_done then
399 if test_env.TRAVIS then 401 if test_env.TRAVIS then
400 if not os.rename(os.getenv("HOME") .. "/.ssh/id_rsa.pub", os.getenv("HOME") .. "/.ssh/id_rsa.pub") then 402 if not exists(os.getenv("HOME") .. "/.ssh/id_rsa.pub") then
401 execute_bool("ssh-keygen -t rsa -P \"\" -f ~/.ssh/id_rsa") 403 execute_bool("ssh-keygen -t rsa -P \"\" -f ~/.ssh/id_rsa")
402 execute_bool("cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys") 404 execute_bool("cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys")
403 execute_bool("chmod og-wx ~/.ssh/authorized_keys") 405 execute_bool("chmod og-wx ~/.ssh/authorized_keys")
@@ -431,7 +433,7 @@ function test_env.need_luasocket()
431 else 433 else
432 local testing_cache = test_env.testing_paths.testing_cache .. "/" 434 local testing_cache = test_env.testing_paths.testing_cache .. "/"
433 local luasocket_rock = "luasocket-3.0rc1-1." .. test_env.platform .. ".rock" 435 local luasocket_rock = "luasocket-3.0rc1-1." .. test_env.platform .. ".rock"
434 if not os.rename( testing_cache .. luasocket_rock, testing_cache .. luasocket_rock) then 436 if not exists(testing_cache .. luasocket_rock) then
435 test_env.run.luarocks_nocov("build --pack-binary-rock luasocket 3.0rc1-1") 437 test_env.run.luarocks_nocov("build --pack-binary-rock luasocket 3.0rc1-1")
436 os.rename(luasocket_rock, testing_cache .. luasocket_rock) 438 os.rename(luasocket_rock, testing_cache .. luasocket_rock)
437 end 439 end