Add text test.

This commit is contained in:
Sergey Vartanov 2021-05-07 01:42:40 +03:00
parent e113ef09e4
commit ffcabd0ab8
2 changed files with 50 additions and 36 deletions

43
test/test_label.py Normal file
View file

@ -0,0 +1,43 @@
"""
Author: Sergey Vartanov (me@enzet.ru).
"""
from typing import List
from roentgen.scheme import Scheme
from roentgen.text import Label
def construct_labels(tags) -> List[Label]:
"""
Construct labels from OSM node tags.
"""
scheme = Scheme("scheme/default.yml")
return scheme.construct_text(tags, True)
def test_1_label() -> None:
"""
Test tags that should be converted into single label.
"""
labels = construct_labels({"name": "Name"})
assert len(labels) == 1
assert labels[0].text == "Name"
def test_1_label_unknown_tags() -> None:
"""
Test tags with some unknown tags that should be converted into single label.
"""
labels = construct_labels({"name": "Name", "aaa": "bbb"})
assert len(labels) == 1
assert labels[0].text == "Name"
def test_2_labels() -> None:
"""
Test tags that should be converted into two labels.
"""
labels = construct_labels({"name": "Name", "ref": "5"})
assert len(labels) == 2
assert labels[0].text == "Name"
assert labels[1].text == "5"

View file

@ -1,43 +1,14 @@
"""
Test text generation.
Author: Sergey Vartanov (me@enzet.ru).
"""
from typing import List
from roentgen.scheme import Scheme
from roentgen.text import Label
from roentgen.text import format_voltage
def construct_labels(tags) -> List[Label]:
def test_voltage() -> None:
"""
Construct labels from OSM node tags.
Test voltage tag value processing.
"""
scheme = Scheme("scheme/default.yml")
return scheme.construct_text(tags, True)
def test_1_label() -> None:
"""
Test tags that should be converted into single label.
"""
labels = construct_labels({"name": "Name"})
assert len(labels) == 1
assert labels[0].text == "Name"
def test_1_label_unknown_tags() -> None:
"""
Test tags with some unknown tags that should be converted into single label.
"""
labels = construct_labels({"name": "Name", "aaa": "bbb"})
assert len(labels) == 1
assert labels[0].text == "Name"
def test_2_labels() -> None:
"""
Test tags that should be converted into two labels.
"""
labels = construct_labels({"name": "Name", "ref": "5"})
assert len(labels) == 2
assert labels[0].text == "Name"
assert labels[1].text == "5"
assert format_voltage("42") == "42 V"
assert format_voltage("42000") == "42 kV"