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"))
138 test "archive.install from Git" do
143 message = "Generated archive \"git_repo-0.1.0.ez\" with MIX_ENV=prod"
153 test "archive install, update, and uninstall life-cycle" do
154 in_fixture("archive", fn ->
157 assert File.regular?("archive-0.1.0.ez")
165 assert File.regular?("archive-0.2.0.ez")
167 message = "Generated archive \"archive-0.2.0.ez\" with MIX_ENV=dev"
173 refute File.regular?(tmp_path("userhome/.mix/archives/archive-0.2.0.ez"))
174 assert File.dir?(tmp_path("userhome/.mix/archives/archive-0.2.0/archive-0.2.0/ebin"))
179 refute File.regular?(tmp_path("userhome/.mix/archives/archive-0.2.0.ez"))
180 assert File.dir?(tmp_path("userhome/.mix/archives/archive-0.2.0/archive-0.2.0/ebin"))
182 # Try to install a missing version does not remove archive
184 Mix.Tasks.Archive.Install.run(["./archive-0.0.0.ez"])
187 assert File.dir?(tmp_path("userhome/.mix/archives/archive-0.2.0/archive-0.2.0/ebin"))
188 refute File.regular?(tmp_path("userhome/.mix/archives/archive-0.1.0.ez"))
190 # Load archive without warnings because there is no :elixir requirement in mix.exs
196 Mix.Tasks.Archive.Uninstall.run(["archive-0.2.0"])
197 assert File.dir?(tmp_path("userhome/.mix/archives/archive-0.2.0/archive-0.2.0/ebin"))
201 Mix.Tasks.Archive.Uninstall.run(["archive-0.2.0"])
202 refute File.dir?(tmp_path("userhome/.mix/archives/archive-0.2.0/archive-0.2.0/ebin"))
206 refute tmp_path("userhome/.mix/archives/archive-0.1.0/archive-0.1.0/ebin") in paths
210 test "archive uninstall without version" do
211 in_fixture("archive", fn ->
217 Mix.Tasks.Archive.Uninstall.run(["archive"])
218 assert File.dir?(tmp_path("userhome/.mix/archives/archive-0.1.0/archive-0.1.0/ebin"))
221 Mix.Tasks.Archive.Uninstall.run(["archive"])
222 refute File.dir?(tmp_path("userhome/.mix/archives/archive-0.1.0/archive-0.1.0/ebin"))
226 test "archive checksum" do
227 in_fixture("archive", fn ->
229 assert File.regular?("archive-0.1.0.ez")
240 Mix.Tasks.Archive.Install.run(["--sha512", sha512("archive-0.1.0.ez")])
241 refute File.regular?(tmp_path("userhome/.mix/archives/archive-0.1.0.ez"))
242 assert File.dir?(tmp_path("userhome/.mix/archives/archive-0.1.0/archive-0.1.0/ebin"))
246 test "archive check" do
247 # Install the archive
248 in_fixture("archive", fn ->
252 Application.unload(:archive)
255 assert_raise Mix.Error, ~r/Expected archive to be in the format/, fn ->
256 archive_check([:archive])
259 assert_raise Mix.Error, ~r/Archive "archive" could not be found/, fn ->
260 archive_check([{:archive, ">= 1.0.0"}])
263 # Load the archive
266 message = ~r/Archive \"archive-0.1.0\" does not match requirement >= 1.0.0/
269 archive_check([{:archive, ">= 1.0.0"}])
272 archive_check([{:archive, ">= 0.0.0"}])
286 defp has_in_zip_file?(archive, name) do
287 {:ok, files} = :zip.list_dir(archive)