tests: Fix path separator issues on Windows

Concatenate directories and filenames in a platform-independent way, by
using pathlib.Path. This fixes issues in the tests where the "/" path
separator made the tests fail on Windows.
This commit is contained in:
Alex Pyrgiotis 2022-10-19 18:42:30 +03:00
parent ae67dfa5a9
commit 7d218e5522
No known key found for this signature in database
GPG key ID: B6C15EBA0357C9AA

View file

@ -6,6 +6,7 @@ import shutil
import sys import sys
import tempfile import tempfile
import traceback import traceback
from pathlib import Path
from typing import Sequence from typing import Sequence
import pytest import pytest
@ -24,7 +25,6 @@ from . import TestBase, for_each_doc
# TODO simulate container runtime missing # TODO simulate container runtime missing
# TODO simulate container connection error # TODO simulate container connection error
# TODO simulate container connection loss # TODO simulate container connection loss
# FIXME "/" path separator is platform-dependent, use pathlib instead
class CLIResult(Result): class CLIResult(Result):
@ -159,26 +159,24 @@ class TestCliConversion(TestCliBasic):
def test_output_filename(self): def test_output_filename(self):
temp_dir = tempfile.mkdtemp(prefix="dangerzone-") temp_dir = tempfile.mkdtemp(prefix="dangerzone-")
result = self.run_cli( output_filename = str(Path(temp_dir) / "safe.pdf")
[self.sample_doc, "--output-filename", f"{temp_dir}/safe.pdf"] result = self.run_cli([self.sample_doc, "--output-filename", output_filename])
)
result.assert_success() result.assert_success()
def test_output_filename_spaces(self): def test_output_filename_spaces(self):
temp_dir = tempfile.mkdtemp(prefix="dangerzone-") temp_dir = tempfile.mkdtemp(prefix="dangerzone-")
result = self.run_cli( output_filename = str(Path(temp_dir) / "safe space.pdf")
[self.sample_doc, "--output-filename", f"{temp_dir}/safe space.pdf"] result = self.run_cli([self.sample_doc, "--output-filename", output_filename])
)
result.assert_success() result.assert_success()
def test_output_filename_new_dir(self): def test_output_filename_new_dir(self):
result = self.run_cli( output_filename = str(Path("fake-directory") / "my-output.pdf")
[self.sample_doc, "--output-filename", "fake-directory/my-output.pdf"] result = self.run_cli([self.sample_doc, "--output-filename", output_filename])
)
result.assert_failure() result.assert_failure()
def test_sample_not_found(self): def test_sample_not_found(self):
result = self.run_cli("fake-directory/fake-file.pdf") input_filename = str(Path("fake-directory") / "fake-file.pdf")
result = self.run_cli(input_filename)
result.assert_failure() result.assert_failure()
def test_lang_eng(self): def test_lang_eng(self):