44 lines
1.5 KiB
Python
44 lines
1.5 KiB
Python
"""Test Plotter extension"""
|
|
|
|
import pytest
|
|
import sys
|
|
from plotter import Plot
|
|
from inkex.tester import ComparisonMixin, TestCase
|
|
from inkex.tester.filters import CompareReplacement
|
|
|
|
|
|
@pytest.mark.skipif(sys.platform == "win32", reason="termios not available on Windows")
|
|
class TestPlotter(ComparisonMixin, TestCase):
|
|
"""Test the plotter extension"""
|
|
|
|
stderr_output = True
|
|
effect_class = Plot
|
|
compare_filter_save = True
|
|
# Testing shapes.svg directly leads to a hang, as the pseudo-terminal
|
|
# has issues with very long writes
|
|
# (https://gitlab.com/inkscape/extensions/-/merge_requests/497#note_1103456028)
|
|
compare_file = "svg/shapes_no_text.svg"
|
|
compare_filters = [CompareReplacement((";", "\n"))]
|
|
old_defaults = (
|
|
"--serialFlowControl=0",
|
|
"--force=24",
|
|
"--speed=20",
|
|
"--orientation=90",
|
|
)
|
|
comparisons = [
|
|
("--serialPort=[test]",) + old_defaults, # HPGL
|
|
("--serialPort=[test]", "--commandLanguage=DMPL") + old_defaults,
|
|
("--serialPort=[test]", "--commandLanguage=KNK") + old_defaults,
|
|
]
|
|
|
|
|
|
@pytest.mark.skipif(sys.platform == "win32", reason="termios not available on Windows")
|
|
class TestPlotterText(ComparisonMixin, TestCase):
|
|
"""Test that text is converted automatically"""
|
|
|
|
stderr_output = True
|
|
effect_class = Plot
|
|
compare_filter_save = True
|
|
compare_file = "svg/text_on_arc_small.svg"
|
|
compare_filters = [CompareReplacement((";", "\n"))]
|
|
comparisons = [("--serialPort=[test]",)]
|