Lines Matching refs:archive

8       [app: :archive, version: "0.1.0", elixir: "~> 0.1.0"]
14 [app: :archive, version: "0.2.0"]
29 test "archive build" do
30 in_fixture("archive", fn ->
32 message = "Generated archive \"archive-0.1.0.ez\" with MIX_ENV=dev"
34 assert File.regular?('archive-0.1.0.ez')
37 refute has_in_zip_file?('archive-0.1.0.ez', 'archive-0.1.0/priv/.dot_file')
41 test "archive build with include-dot-files" do
42 in_fixture("archive", fn ->
44 message = "Generated archive \"archive-0.1.0.ez\" with MIX_ENV=dev"
46 assert File.regular?('archive-0.1.0.ez')
49 assert has_in_zip_file?('archive-0.1.0.ez', 'archive-0.1.0/priv/.dot_file')
54 assert File.regular?('archive-0.1.0.ez')
55 assert has_in_zip_file?('archive-0.1.0.ez', 'archive-0.1.0/.elixir')
56 assert has_in_zip_file?('archive-0.1.0.ez', 'archive-0.1.0/priv/not_really_an.so')
59 'archive-0.1.0.ez',
60 'archive-0.1.0/ebin/Elixir.Mix.Tasks.Local.Sample.beam'
63 assert has_in_zip_file?('archive-0.1.0.ez', 'archive-0.1.0/ebin/archive.app')
66 test "archive install" do
67 in_fixture("archive", fn ->
68 # Build and install archive
73 refute File.regular?(tmp_path("userhome/.mix/archives/archive-0.1.0.ez"))
74 assert File.dir?(tmp_path("userhome/.mix/archives/archive-0.1.0/archive-0.1.0/ebin"))
78 "warning: the archive archive-0.1.0 requires Elixir \"~> 0.1.0\" " <>
83 archive = tmp_path("userhome/.mix/archives/archive-0.1.0/archive-0.1.0/ebin")
84 assert to_charlist(archive) in :code.get_path()
86 # Loading the archive should emit warning again
90 # List archive
96 assert_received {:mix_shell, :info, ["* archive-0.1.0"]}
104 test "archive install invalid file" do
105 in_fixture("archive", fn ->
106 file_name = "invalid-archive-0.1.0.ez"
111 assert_raise Mix.Error, ~r/invalid archive file/, fn ->
117 test "archive install missing file" do
125 test "archive install --force" do
126 in_fixture("archive", fn ->
130 message = "Generated archive \"archive-0.1.0.ez\" with MIX_ENV=dev"
133 Mix.Tasks.Archive.Uninstall.run(["archive-0.1.0", "--force"])
134 refute File.dir?(tmp_path("userhome/.mix/archives/archive-0.1.0/archive-0.1.0/ebin"))
139 test "archive.install from Git" do
167 message = "Generated archive \"git_repo-0.1.0.ez\" with MIX_ENV=prod"
177 test "archive install, update, and uninstall life-cycle" do
178 in_fixture("archive", fn ->
181 assert File.regular?("archive-0.1.0.ez")
189 assert File.regular?("archive-0.2.0.ez")
191 message = "Generated archive \"archive-0.2.0.ez\" with MIX_ENV=dev"
197 refute File.regular?(tmp_path("userhome/.mix/archives/archive-0.2.0.ez"))
198 assert File.dir?(tmp_path("userhome/.mix/archives/archive-0.2.0/archive-0.2.0/ebin"))
203 refute File.regular?(tmp_path("userhome/.mix/archives/archive-0.2.0.ez"))
204 assert File.dir?(tmp_path("userhome/.mix/archives/archive-0.2.0/archive-0.2.0/ebin"))
206 # Try to install a missing version does not remove archive
208 Mix.Tasks.Archive.Install.run(["./archive-0.0.0.ez"])
211 assert File.dir?(tmp_path("userhome/.mix/archives/archive-0.2.0/archive-0.2.0/ebin"))
212 refute File.regular?(tmp_path("userhome/.mix/archives/archive-0.1.0.ez"))
214 # Load archive without warnings because there is no :elixir requirement in mix.exs
220 Mix.Tasks.Archive.Uninstall.run(["archive-0.2.0"])
221 assert File.dir?(tmp_path("userhome/.mix/archives/archive-0.2.0/archive-0.2.0/ebin"))
225 Mix.Tasks.Archive.Uninstall.run(["archive-0.2.0"])
226 refute File.dir?(tmp_path("userhome/.mix/archives/archive-0.2.0/archive-0.2.0/ebin"))
230 refute tmp_path("userhome/.mix/archives/archive-0.1.0/archive-0.1.0/ebin") in paths
234 test "archive uninstall without version" do
235 in_fixture("archive", fn ->
241 Mix.Tasks.Archive.Uninstall.run(["archive"])
242 assert File.dir?(tmp_path("userhome/.mix/archives/archive-0.1.0/archive-0.1.0/ebin"))
245 Mix.Tasks.Archive.Uninstall.run(["archive"])
246 refute File.dir?(tmp_path("userhome/.mix/archives/archive-0.1.0/archive-0.1.0/ebin"))
250 test "archive checksum" do
251 in_fixture("archive", fn ->
253 assert File.regular?("archive-0.1.0.ez")
264 Mix.Tasks.Archive.Install.run(["--sha512", sha512("archive-0.1.0.ez")])
265 refute File.regular?(tmp_path("userhome/.mix/archives/archive-0.1.0.ez"))
266 assert File.dir?(tmp_path("userhome/.mix/archives/archive-0.1.0/archive-0.1.0/ebin"))
270 test "archive check" do
271 # Install the archive
272 in_fixture("archive", fn ->
276 Application.unload(:archive)
279 assert_raise Mix.Error, ~r/Expected archive to be in the format/, fn ->
280 archive_check([:archive])
283 assert_raise Mix.Error, ~r/Archive "archive" could not be found/, fn ->
284 archive_check([{:archive, ">= 1.0.0"}])
287 # Load the archive
290 message = ~r/Archive \"archive-0.1.0\" does not match requirement >= 1.0.0/
293 archive_check([{:archive, ">= 1.0.0"}])
296 archive_check([{:archive, ">= 0.0.0"}])
310 defp has_in_zip_file?(archive, name) do
311 {:ok, files} = :zip.list_dir(archive)