From 2a6b5ba3507a79798f9cbf2946e930bc541b51af Mon Sep 17 00:00:00 2001 From: Sergey Vartanov Date: Thu, 10 Jun 2021 00:17:15 +0300 Subject: [PATCH] Get use of pytest fixtures. --- requirements.txt | 5 +++-- test/test_icons.py | 35 +++++++++++++++++++++++++---------- 2 files changed, 28 insertions(+), 12 deletions(-) diff --git a/requirements.txt b/requirements.txt index 9b38bc0..aea2383 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,7 +1,8 @@ -shapely +colour~=0.1.5 numpy>=1.18.1 portolan~=1.0.1 +pytest pyyaml>=4.2b1 +shapely svgwrite~=1.4 urllib3>=1.25.6 -colour~=0.1.5 \ No newline at end of file diff --git a/test/test_icons.py b/test/test_icons.py index 4a5da1c..a5010d0 100644 --- a/test/test_icons.py +++ b/test/test_icons.py @@ -2,7 +2,9 @@ Test icon generation for nodes. """ from pathlib import Path -from typing import Dict +from typing import Dict, Tuple + +import pytest from roentgen.icon import IconSet from roentgen.grid import IconCollection @@ -12,21 +14,34 @@ __author__ = "Sergey Vartanov" __email__ = "me@enzet.ru" -def test_icons() -> None: - """ - Test grid drawing. - """ +@pytest.fixture +def init_directories() -> Tuple[Path, Path]: + """Create temporary directories.""" temp_directory: Path = Path("temp") temp_directory.mkdir(exist_ok=True) set_directory: Path = temp_directory / "icon_set" set_directory.mkdir(exist_ok=True) - collection: IconCollection = IconCollection.from_scheme( - SCHEME, SHAPE_EXTRACTOR - ) - collection.draw_grid(temp_directory / "grid.svg") - collection.draw_icons(set_directory) + return temp_directory, set_directory + + +@pytest.fixture +def init_collection() -> IconCollection: + """Create collection of all possible icon sets.""" + return IconCollection.from_scheme(SCHEME, SHAPE_EXTRACTOR) + + +def test_grid(init_collection, init_directories) -> None: + """Test grid drawing.""" + temp_directory, _ = init_directories + init_collection.draw_grid(temp_directory / "grid.svg") + + +def test_icons(init_collection, init_directories) -> None: + """Test individual icons drawing.""" + _, set_directory = init_directories + init_collection.draw_icons(set_directory) def get_icon(tags: Dict[str, str]) -> IconSet: