summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEric Meadows-Jönsson <eric.meadows.jonsson@gmail.com>2020-11-12 16:07:55 +0100
committerEric Meadows-Jönsson <eric.meadows.jonsson@gmail.com>2020-11-12 16:07:55 +0100
commita9866d9c25469855e15f64ca9eaa543c8cbc587b (patch)
treea6b014379dd59ea022a0c3cd9363dac254f89743
parentf928258f2e2b77af523d08fb9ec90429214fe0d7 (diff)
downloadelixir-emj/archive-test.tar.gz
Fix intermittent test failure caused by archive warningemj/archive-test
-rw-r--r--lib/mix/lib/mix/local.ex15
-rw-r--r--lib/mix/test/mix/tasks/archive_test.exs6
2 files changed, 18 insertions, 3 deletions
diff --git a/lib/mix/lib/mix/local.ex b/lib/mix/lib/mix/local.ex
index 118f6e155..197cca226 100644
--- a/lib/mix/lib/mix/local.ex
+++ b/lib/mix/lib/mix/local.ex
@@ -34,7 +34,7 @@ defmodule Mix.Local do
def path_for(:escript), do: Mix.path_for(:escripts)
@doc """
- Appends archives paths into Erlang code path.
+ Appends archive paths to the Erlang code path.
"""
def append_archives do
for archive <- archives_ebins() do
@@ -46,7 +46,18 @@ defmodule Mix.Local do
end
@doc """
- Appends Mix paths into Erlang code path.
+ Removes archive paths from Erlang code path.
+ """
+ def remove_archives do
+ for archive <- archives_ebins() do
+ Code.delete_path(archive)
+ end
+
+ :ok
+ end
+
+ @doc """
+ Appends Mix paths to the Erlang code path.
"""
def append_paths do
Enum.each(mix_paths(), &Code.append_path(&1))
diff --git a/lib/mix/test/mix/tasks/archive_test.exs b/lib/mix/test/mix/tasks/archive_test.exs
index e193308ab..d617f2aca 100644
--- a/lib/mix/test/mix/tasks/archive_test.exs
+++ b/lib/mix/test/mix/tasks/archive_test.exs
@@ -19,7 +19,11 @@ defmodule Mix.Tasks.ArchiveTest do
File.rm_rf!(tmp_path("userhome"))
System.put_env("MIX_ARCHIVES", tmp_path("userhome/.mix/archives/"))
Mix.Project.push(ArchiveProject)
- :ok
+
+ on_exit(fn ->
+ Mix.Local.remove_archives()
+ System.delete_env("MIX_ARCHIVES")
+ end)
end
test "archive build" do