summaryrefslogtreecommitdiff
path: root/lib/mix/tasks
diff options
context:
space:
mode:
authorfeld <feld@feld.me>2024-06-20 01:07:41 +0000
committerfeld <feld@feld.me>2024-06-20 01:07:41 +0000
commit9a4cdde5c9e833a8cc61d660f5627717756778d2 (patch)
tree0a1b2a55743c2e00f32c7549fc4bf68b0ea3c894 /lib/mix/tasks
parent3c1db78a6e8dc3cf9087ba5f825d53d5c6a9856d (diff)
parented2976b237b53a524247d564691e0a12d3231d68 (diff)
downloadpleroma-9a4cdde5c9e833a8cc61d660f5627717756778d2.tar.gz
pleroma-9a4cdde5c9e833a8cc61d660f5627717756778d2.zip
Merge branch 'bugfix/elixir-1.15' into 'develop'
Elixir 1.15 compatibility See merge request pleroma/pleroma!3917
Diffstat (limited to 'lib/mix/tasks')
-rw-r--r--lib/mix/tasks/pleroma/database.ex2
-rw-r--r--lib/mix/tasks/pleroma/test_runner.ex25
2 files changed, 26 insertions, 1 deletions
diff --git a/lib/mix/tasks/pleroma/database.ex b/lib/mix/tasks/pleroma/database.ex
index 13ac6536c..b82d1f079 100644
--- a/lib/mix/tasks/pleroma/database.ex
+++ b/lib/mix/tasks/pleroma/database.ex
@@ -351,7 +351,7 @@ defmodule Mix.Tasks.Pleroma.Database do
)
end
- shell_info('Done.')
+ shell_info(~c"Done.")
end
end
diff --git a/lib/mix/tasks/pleroma/test_runner.ex b/lib/mix/tasks/pleroma/test_runner.ex
new file mode 100644
index 000000000..69fefb001
--- /dev/null
+++ b/lib/mix/tasks/pleroma/test_runner.ex
@@ -0,0 +1,25 @@
+defmodule Mix.Tasks.Pleroma.TestRunner do
+ @shortdoc "Retries tests once if they fail"
+
+ use Mix.Task
+
+ def run(args \\ []) do
+ case System.cmd("mix", ["test"] ++ args, into: IO.stream(:stdio, :line)) do
+ {_, 0} ->
+ :ok
+
+ _ ->
+ retry(args)
+ end
+ end
+
+ def retry(args) do
+ case System.cmd("mix", ["test", "--failed"] ++ args, into: IO.stream(:stdio, :line)) do
+ {_, 0} ->
+ :ok
+
+ _ ->
+ exit(1)
+ end
+ end
+end