Review record RC-066 (Go, autonomous mode, not independent). Task: MIL-011#1 Task: MIL-011#2 Task: MIL-011#3 Task: MIL-011#4 Task: MIL-011#5 Task: MIL-011#6 Task: MIL-011#7 Task: MIL-011#8
37 lines
1.1 KiB
Python
37 lines
1.1 KiB
Python
"""Tests of the name of the words to learn file of a word list."""
|
|
|
|
from pathlib import Path
|
|
|
|
import pytest
|
|
|
|
from flash_card.infrastructure.persistence.progress_file_name import (
|
|
progress_file_name,
|
|
)
|
|
|
|
|
|
def test_progress_file_name_is_default_for_the_delivered_list() -> None:
|
|
assert progress_file_name(Path("data") / "ms-da.csv") == "words_to_learn.csv"
|
|
|
|
|
|
def test_progress_file_name_uses_the_stem_for_another_list() -> None:
|
|
assert progress_file_name(Path("x") / "animals.csv") == "words_to_learn_animals.csv"
|
|
|
|
|
|
def test_progress_file_name_keeps_hyphen_and_underscore() -> None:
|
|
name = progress_file_name(Path("my_list-2.csv"))
|
|
assert name == "words_to_learn_my_list-2.csv"
|
|
|
|
|
|
@pytest.mark.parametrize(
|
|
("file_name", "expected"),
|
|
[
|
|
("my list.csv", "words_to_learn_my_list.csv"),
|
|
("a.b;c.csv", "words_to_learn_a_b_c.csv"),
|
|
("ord (1).csv", "words_to_learn_ord__1_.csv"),
|
|
],
|
|
)
|
|
def test_progress_file_name_replaces_other_characters(
|
|
file_name: str, expected: str
|
|
) -> None:
|
|
assert progress_file_name(Path(file_name)) == expected
|