diff options
Diffstat (limited to 'spec/pack_spec.lua')
| -rw-r--r-- | spec/pack_spec.lua | 76 |
1 files changed, 54 insertions, 22 deletions
diff --git a/spec/pack_spec.lua b/spec/pack_spec.lua index 86b4e2b2..54d139e0 100644 --- a/spec/pack_spec.lua +++ b/spec/pack_spec.lua | |||
| @@ -5,57 +5,89 @@ local testing_paths = test_env.testing_paths | |||
| 5 | 5 | ||
| 6 | test_env.unload_luarocks() | 6 | test_env.unload_luarocks() |
| 7 | 7 | ||
| 8 | local extra_rocks = { | 8 | local extra_rocks = test_env.mock_server_extra_rocks({ |
| 9 | "/luasec-0.6-1.rockspec", | 9 | "/luasec-0.6-1.rockspec", |
| 10 | "/luassert-1.7.0-1.src.rock", | 10 | "/luassert-1.7.0-1.src.rock", |
| 11 | "/luasocket-3.0rc1-2.src.rock", | 11 | "/luasocket-3.0rc1-2.src.rock", |
| 12 | "/luasocket-3.0rc1-2.rockspec", | 12 | "/luasocket-3.0rc1-2.rockspec", |
| 13 | "/say-1.2-1.src.rock", | 13 | "/say-1.2-1.src.rock", |
| 14 | "/say-1.0-1.src.rock" | 14 | "/say-1.0-1.src.rock" |
| 15 | } | 15 | }) |
| 16 | 16 | ||
| 17 | describe("LuaRocks pack tests #blackbox #b_pack", function() | 17 | describe("LuaRocks pack #blackbox #b_pack", function() |
| 18 | 18 | ||
| 19 | before_each(function() | 19 | before_each(function() |
| 20 | test_env.setup_specs(extra_rocks) | 20 | test_env.setup_specs(extra_rocks) |
| 21 | end) | 21 | end) |
| 22 | 22 | ||
| 23 | it("LuaRocks pack with no flags/arguments", function() | 23 | it("with no flags/arguments", function() |
| 24 | assert.is_false(run.luarocks_bool("pack")) | 24 | assert.is_false(run.luarocks_bool("pack")) |
| 25 | end) | 25 | end) |
| 26 | 26 | ||
| 27 | it("LuaRocks pack basic", function() | 27 | it("basic", function() |
| 28 | assert.is_true(run.luarocks_bool("pack luacov")) | 28 | assert(run.luarocks_bool("pack luacov")) |
| 29 | assert.is_true(test_env.remove_files(lfs.currentdir(), "luacov%-")) | 29 | assert(test_env.remove_files(lfs.currentdir(), "luacov%-")) |
| 30 | end) | 30 | end) |
| 31 | 31 | ||
| 32 | it("LuaRocks pack invalid rockspec", function() | 32 | it("invalid rockspec", function() |
| 33 | assert.is_false(run.luarocks_bool("pack " .. testing_paths.fixtures_dir .. "/invaild_validate-args-1.5.4-1.rockspec")) | 33 | assert.is_false(run.luarocks_bool("pack " .. testing_paths.fixtures_dir .. "/invalid_validate-args-1.5.4-1.rockspec")) |
| 34 | end) | 34 | end) |
| 35 | 35 | ||
| 36 | it("LuaRocks pack not installed rock", function() | 36 | it("not installed rock", function() |
| 37 | assert.is_false(run.luarocks_bool("pack cjson")) | 37 | assert.is_false(run.luarocks_bool("pack cjson")) |
| 38 | end) | 38 | end) |
| 39 | 39 | ||
| 40 | it("LuaRocks pack not installed rock from non existing manifest", function() | 40 | it("not installed rock from non existing manifest", function() |
| 41 | assert.is_false(run.luarocks_bool("pack /non/exist/temp.manif")) | 41 | assert.is_false(run.luarocks_bool("pack /non/exist/temp.manif")) |
| 42 | end) | 42 | end) |
| 43 | 43 | ||
| 44 | it("LuaRocks pack detects latest version version of rock", function() | 44 | it("detects latest version version of rock", function() |
| 45 | assert.is_true(run.luarocks_bool("install say 1.2")) | 45 | assert(run.luarocks_bool("install say 1.2")) |
| 46 | assert.is_true(run.luarocks_bool("install luassert")) | 46 | assert(run.luarocks_bool("install luassert")) |
| 47 | assert.is_true(run.luarocks_bool("install say 1.0")) | 47 | assert(run.luarocks_bool("install say 1.0")) |
| 48 | assert.is_true(run.luarocks_bool("pack say")) | 48 | assert(run.luarocks_bool("pack say")) |
| 49 | assert.is_truthy(lfs.attributes("say-1.2-1.all.rock")) | 49 | assert.is_truthy(lfs.attributes("say-1.2-1.all.rock")) |
| 50 | assert.is_true(test_env.remove_files(lfs.currentdir(), "say%-")) | 50 | assert(test_env.remove_files(lfs.currentdir(), "say%-")) |
| 51 | end) | 51 | end) |
| 52 | 52 | ||
| 53 | it("LuaRocks pack src", function() | 53 | it("src", function() |
| 54 | assert.is_true(run.luarocks_bool("install luasec " .. test_env.OPENSSL_DIRS)) | 54 | assert(run.luarocks_bool("install luasec " .. test_env.OPENSSL_DIRS)) |
| 55 | assert.is_true(run.luarocks_bool("download --rockspec luasocket 3.0rc1-2")) | 55 | assert(run.luarocks_bool("download --rockspec luasocket 3.0rc1-2")) |
| 56 | assert.is_true(run.luarocks_bool("pack luasocket-3.0rc1-2.rockspec")) | 56 | assert(run.luarocks_bool("pack luasocket-3.0rc1-2.rockspec")) |
| 57 | assert.is_true(test_env.remove_files(lfs.currentdir(), "luasocket%-")) | 57 | assert(test_env.remove_files(lfs.currentdir(), "luasocket%-")) |
| 58 | end) | 58 | end) |
| 59 | |||
| 60 | describe("#mock namespaced dependencies", function() | ||
| 61 | |||
| 62 | setup(function() | ||
| 63 | test_env.mock_server_init() | ||
| 64 | end) | ||
| 65 | |||
| 66 | teardown(function() | ||
| 67 | test_env.mock_server_done() | ||
| 68 | end) | ||
| 69 | |||
| 70 | it("can pack rockspec with namespaced dependencies", function() | ||
| 71 | finally(function() | ||
| 72 | os.remove("has_namespaced_dep-1.0-1.src.rock") | ||
| 73 | end) | ||
| 74 | assert(run.luarocks_bool("pack " .. testing_paths.fixtures_dir .. "/a_repo/has_namespaced_dep-1.0-1.rockspec")) | ||
| 75 | assert.is_truthy(lfs.attributes("has_namespaced_dep-1.0-1.src.rock")) | ||
| 76 | end) | ||
| 77 | end) | ||
| 78 | |||
| 79 | describe("#namespaces", function() | ||
| 80 | it("packs a namespaced rock", function() | ||
| 81 | finally(function() | ||
| 82 | os.remove("a_rock-2.0-1.all.rock") | ||
| 83 | end) | ||
| 84 | assert(run.luarocks_bool("build a_user/a_rock --server=" .. testing_paths.fixtures_dir .. "/a_repo" )) | ||
| 85 | assert(run.luarocks_bool("build a_rock --keep --server=" .. testing_paths.fixtures_dir .. "/a_repo" )) | ||
| 86 | assert(run.luarocks_bool("pack a_user/a_rock" )) | ||
| 87 | assert(lfs.attributes("a_rock-2.0-1.all.rock")) | ||
| 88 | end) | ||
| 89 | end) | ||
| 90 | |||
| 59 | end) | 91 | end) |
| 60 | 92 | ||
| 61 | 93 | ||
