[Bugfix] Fix yt-dlp illegal write issue that causes failure to fetch source details (#247)

* Bandaid fix for yt-dlp write issue

* Ensured tempfile directory on app boot
This commit is contained in:
Kieran
2024-05-15 17:32:56 -07:00
committed by GitHub
parent a7b0af65e2
commit b1a6a6a81f
4 changed files with 39 additions and 1 deletions
@@ -13,6 +13,19 @@ defmodule Pinchflat.Boot.PreJobStartupTasksTest do
:ok
end
describe "ensure_tmpfile_directory" do
test "creates the tmpfile directory if it doesn't exist" do
tmpfile_dir = Application.get_env(:pinchflat, :tmpfile_directory)
File.rm_rf!(tmpfile_dir)
refute File.exists?(tmpfile_dir)
PreJobStartupTasks.init(%{})
assert File.exists?(tmpfile_dir)
end
end
describe "reset_executing_jobs" do
test "resets executing jobs" do
job = job_fixture()
@@ -78,6 +91,7 @@ defmodule Pinchflat.Boot.PreJobStartupTasksTest do
describe "apply_default_settings" do
test "sets yt_dlp version" do
File.rm_rf!(Application.get_env(:pinchflat, :tmpfile_directory))
Settings.set(yt_dlp_version: nil)
refute Settings.get!(:yt_dlp_version)
@@ -88,6 +102,7 @@ defmodule Pinchflat.Boot.PreJobStartupTasksTest do
end
test "sets apprise version" do
File.rm_rf!(Application.get_env(:pinchflat, :tmpfile_directory))
Settings.set(apprise_version: nil)
refute Settings.get!(:apprise_version)
+4
View File
@@ -7,6 +7,10 @@ defmodule Pinchflat.Utils.CliUtilsTest do
test "delegates to System.cmd/3" do
assert {"output\n", 0} = CliUtils.wrap_cmd("echo", ["output"])
end
test "sets the current directory to the tmp dir" do
assert {"/tmp/test/tmpfiles\n", 0} = CliUtils.wrap_cmd("pwd", [])
end
end
describe "parse_options/1" do