aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGeorge Roman <george.roman.99@gmail.com>2018-07-19 13:11:11 +0300
committerHisham Muhammad <hisham@gobolinux.org>2018-07-22 22:53:37 -0300
commit098fe3c52f1d400301124f5084b1972d57fd62d7 (patch)
treeb775cbb91c564c5135afeb1e8c731d2bfb771878
parent66b2816a2fd193eaf09f916efb0231aa7184db8a (diff)
downloadluarocks-098fe3c52f1d400301124f5084b1972d57fd62d7.tar.gz
luarocks-098fe3c52f1d400301124f5084b1972d57fd62d7.tar.bz2
luarocks-098fe3c52f1d400301124f5084b1972d57fd62d7.zip
Tests: use more fixtures in the build tests
-rw-r--r--spec/build_spec.lua130
-rw-r--r--spec/fixtures/with_dep-0.1-1.rockspec18
-rw-r--r--spec/fixtures/with_dep.lua6
3 files changed, 101 insertions, 53 deletions
diff --git a/spec/build_spec.lua b/spec/build_spec.lua
index 0aaa6d63..707ab145 100644
--- a/spec/build_spec.lua
+++ b/spec/build_spec.lua
@@ -19,12 +19,9 @@ local extra_rocks = {
19 "/lpeg-1.0.0-1.rockspec", 19 "/lpeg-1.0.0-1.rockspec",
20 "/lpeg-1.0.0-1.src.rock", 20 "/lpeg-1.0.0-1.src.rock",
21 "/luafilesystem-1.6.3-1.src.rock", 21 "/luafilesystem-1.6.3-1.src.rock",
22 "/lualogging-1.3.0-1.src.rock",
23 "/luasec-0.6-1.rockspec", 22 "/luasec-0.6-1.rockspec",
24 "/luasocket-3.0rc1-2.src.rock", 23 "/luasocket-3.0rc1-2.src.rock",
25 "/luasocket-3.0rc1-2.rockspec", 24 "/luasocket-3.0rc1-2.rockspec",
26 "/lxsh-0.8.6-2.src.rock",
27 "/lxsh-0.8.6-2.rockspec",
28 "/stdlib-41.0.0-1.src.rock", 25 "/stdlib-41.0.0-1.src.rock",
29 "/validate-args-1.5.4-1.rockspec" 26 "/validate-args-1.5.4-1.rockspec"
30} 27}
@@ -135,17 +132,17 @@ describe("LuaRocks build tests #integration", function()
135 assert.falsy(lfs.attributes(testing_paths.testing_sys_rocks .. "/a_rock/1.0-1/a_rock-1.0-1.rockspec")) 132 assert.falsy(lfs.attributes(testing_paths.testing_sys_rocks .. "/a_rock/1.0-1/a_rock-1.0-1.rockspec"))
136 end) 133 end)
137 134
138 it("LuaRocks build lpeg only-sources example", function() 135 it("LuaRocks build with --only-sources", function()
139 assert.is_true(run.luarocks_bool("download --rockspec lpeg")) 136 assert.is_true(run.luarocks_bool("download --server=" .. testing_paths.fixtures_dir .. "/a_repo --rockspec a_rock"))
140 assert.is_false(run.luarocks_bool("build --only-sources=\"http://example.com\" lpeg-1.0.0-1.rockspec")) 137 assert.is_false(run.luarocks_bool("build --only-sources=\"http://example.com\" a_rock-1.0-1.rockspec"))
141 assert.is.falsy(lfs.attributes(testing_paths.testing_sys_rocks .. "/lpeg/1.0.0-1/lpeg-1.0.0-1.rockspec")) 138 assert.is.falsy(lfs.attributes(testing_paths.testing_sys_rocks .. "/a_rock/1.0-1/a_rock-1.0-1.rockspec"))
142 139
143 assert.is_true(run.luarocks_bool("download --source lpeg")) 140 assert.is_true(run.luarocks_bool("download --server=" .. testing_paths.fixtures_dir .. "/a_repo --source a_rock"))
144 assert.is_true(run.luarocks_bool("build --only-sources=\"http://example.com\" lpeg-1.0.0-1.src.rock")) 141 assert.is_true(run.luarocks_bool("build --only-sources=\"http://example.com\" a_rock-1.0-1.src.rock"))
145 assert.is.truthy(lfs.attributes(testing_paths.testing_sys_rocks .. "/lpeg/1.0.0-1/lpeg-1.0.0-1.rockspec")) 142 assert.is.truthy(lfs.attributes(testing_paths.testing_sys_rocks .. "/a_rock/1.0-1/a_rock-1.0-1.rockspec"))
146 143
147 assert.is_true(os.remove("lpeg-1.0.0-1.rockspec")) 144 assert.is_true(os.remove("a_rock-1.0-1.rockspec"))
148 assert.is_true(os.remove("lpeg-1.0.0-1.src.rock")) 145 assert.is_true(os.remove("a_rock-1.0-1.src.rock"))
149 end) 146 end)
150 147
151 it("LuaRocks build fails if an empty tree is given", function() 148 it("LuaRocks build fails if an empty tree is given", function()
@@ -201,9 +198,35 @@ describe("LuaRocks build tests #integration", function()
201 lfs.rmdir(tmpdir) 198 lfs.rmdir(tmpdir)
202 end) 199 end)
203 200
204 it("LuaRocks build luasec with skipping dependency checks", function() 201 it("LuaRocks build with skipping dependency checks", function()
205 assert.is_true(run.luarocks_bool("build luasec 0.6-1 " .. test_env.openssl_dirs .. " --nodeps")) 202 local olddir = lfs.currentdir()
206 assert.is.truthy(lfs.attributes(testing_paths.testing_sys_rocks .. "/luasec/0.6-1/luasec-0.6-1.rockspec")) 203 local tmpdir = get_tmp_path()
204 lfs.mkdir(tmpdir)
205 lfs.chdir(tmpdir)
206
207 write_file("test-1.0-1.rockspec", [[
208 package = "test"
209 version = "1.0-1"
210 source = {
211 url = "file://]] .. tmpdir:gsub("\\", "/") .. [[/test.lua"
212 }
213 dependencies = {
214 "a_rock 1.0"
215 }
216 build = {
217 type = "builtin",
218 modules = {
219 test = "test.lua"
220 }
221 }
222 ]], finally)
223 write_file("test.lua", "return {}", finally)
224
225 assert.is_true(run.luarocks_bool("build test-1.0-1.rockspec --deps-mode=none"))
226 assert.is.truthy(lfs.attributes(testing_paths.testing_sys_rocks .. "/test/1.0-1/test-1.0-1.rockspec"))
227
228 lfs.chdir(olddir)
229 lfs.rmdir(tmpdir)
207 end) 230 end)
208 231
209 it("LuaRocks build lmathx deps partial match", function() 232 it("LuaRocks build lmathx deps partial match", function()
@@ -267,22 +290,71 @@ describe("LuaRocks build tests #integration", function()
267 assert.is.falsy(lfs.attributes(testing_paths.testing_sys_rocks .. "/luasec/0.6-1/luasec-0.6-1.rockspec")) 290 assert.is.falsy(lfs.attributes(testing_paths.testing_sys_rocks .. "/luasec/0.6-1/luasec-0.6-1.rockspec"))
268 end) 291 end)
269 292
270 it("LuaRocks build only deps of downloaded rockspec of lxsh", function() 293 it("LuaRocks build only deps of a given rockspec", function()
271 assert.is_true(run.luarocks_bool("download --rockspec lxsh 0.8.6-2")) 294 local olddir = lfs.currentdir()
272 assert.is.truthy(run.luarocks("build lxsh-0.8.6-2.rockspec --only-deps")) 295 local tmpdir = get_tmp_path()
273 assert.is_false(run.luarocks_bool("show lxsh")) 296 lfs.mkdir(tmpdir)
274 assert.is.falsy(lfs.attributes(testing_paths.testing_sys_rocks .. "/lxsh/0.8.6-2/lxsh-0.8.6-2.rockspec")) 297 lfs.chdir(tmpdir)
275 assert.is.truthy(lfs.attributes(testing_paths.testing_sys_rocks .. "/lpeg/1.0.0-1/lpeg-1.0.0-1.rockspec")) 298
276 assert.is_true(os.remove("lxsh-0.8.6-2.rockspec")) 299 write_file("test-1.0-1.rockspec", [[
300 package = "test"
301 version = "1.0-1"
302 source = {
303 url = "file://]] .. tmpdir:gsub("\\", "/") .. [[/test.lua"
304 }
305 dependencies = {
306 "a_rock 1.0"
307 }
308 build = {
309 type = "builtin",
310 modules = {
311 test = "test.lua"
312 }
313 }
314 ]], finally)
315 write_file("test.lua", "return {}", finally)
316
317 assert.is.truthy(run.luarocks_bool("build --server=" .. testing_paths.fixtures_dir .. "/a_repo test-1.0-1.rockspec --only-deps"))
318 assert.is.falsy(lfs.attributes(testing_paths.testing_sys_rocks .. "/test/1.0-1/test-1.0-1.rockspec"))
319 assert.is.truthy(lfs.attributes(testing_paths.testing_sys_rocks .. "/a_rock/1.0-1/a_rock-1.0-1.rockspec"))
320
321 lfs.chdir(olddir)
322 lfs.rmdir(tmpdir)
277 end) 323 end)
278 324
279 it("LuaRocks build only deps of downloaded rock of lxsh", function() 325 pending("LuaRocks build only deps of a given rock", function()
280 assert.is_true(run.luarocks_bool("download --source lxsh 0.8.6-2")) 326 local olddir = lfs.currentdir()
281 assert.is.truthy(run.luarocks("build lxsh-0.8.6-2.src.rock --only-deps")) 327 local tmpdir = get_tmp_path()
282 assert.is_false(run.luarocks_bool("show lxsh")) 328 lfs.mkdir(tmpdir)
283 assert.is.falsy(lfs.attributes(testing_paths.testing_sys_rocks .. "/lxsh/0.8.6-2/lxsh-0.8.6-2.rockspec")) 329 lfs.chdir(tmpdir)
284 assert.is.truthy(lfs.attributes(testing_paths.testing_sys_rocks .. "/lpeg/1.0.0-1/lpeg-1.0.0-1.rockspec")) 330
285 assert.is_true(os.remove("lxsh-0.8.6-2.src.rock")) 331 write_file("test-1.0-1.rockspec", [[
332 package = "test"
333 version = "1.0-1"
334 source = {
335 url = "file://]] .. tmpdir:gsub("\\", "/") .. [[/test.lua"
336 }
337 dependencies = {
338 "a_rock 1.0"
339 }
340 build = {
341 type = "builtin",
342 modules = {
343 test = "test.lua"
344 }
345 }
346 ]], finally)
347 write_file("test.lua", "return {}", finally)
348
349 assert.is.truthy(run.luarocks_bool("pack test-1.0-1.rockspec"))
350 assert.is.truthy(lfs.attributes("test-1.0-1.src.rock"))
351
352 assert.is.truthy(run.luarocks_bool("build --server=" .. testing_paths.fixtures_dir .. "/a_repo test-1.0-1.src.rock --only-deps"))
353 assert.is.falsy(lfs.attributes(testing_paths.testing_sys_rocks .. "/test/1.0-1/test-1.0-1.rockspec"))
354 assert.is.truthy(lfs.attributes(testing_paths.testing_sys_rocks .. "/a_rock/1.0-1/a_rock-1.0-1.rockspec"))
355
356 lfs.chdir(olddir)
357 lfs.rmdir(tmpdir)
286 end) 358 end)
287 359
288 it("LuaRocks build with https", function() 360 it("LuaRocks build with https", function()
diff --git a/spec/fixtures/with_dep-0.1-1.rockspec b/spec/fixtures/with_dep-0.1-1.rockspec
deleted file mode 100644
index 53b26c9d..00000000
--- a/spec/fixtures/with_dep-0.1-1.rockspec
+++ /dev/null
@@ -1,18 +0,0 @@
1package = "with_dep"
2version = "0.1-1"
3source = {
4 url = "http://localhost:8080/file/with_dep.lua"
5}
6description = {
7 summary = "An example rockspec",
8}
9dependencies = {
10 "lua >= 5.1",
11 "with_external_dep 0.1",
12}
13build = {
14 type = "builtin",
15 modules = {
16 with_dep = "with_dep.lua"
17 }
18}
diff --git a/spec/fixtures/with_dep.lua b/spec/fixtures/with_dep.lua
deleted file mode 100644
index ad7e462a..00000000
--- a/spec/fixtures/with_dep.lua
+++ /dev/null
@@ -1,6 +0,0 @@
1local pok, with_external_dep = pcall(require, "with_external_dep")
2if pok then
3 print(with_external_dep.foo)
4else
5 print(100)
6end