pyembroidery/test/test_trims_dst_jef.py

74 wiersze
3.2 KiB
Python

2019-07-15 23:46:18 +00:00
from __future__ import print_function
import unittest
2019-07-15 23:49:43 +00:00
from pyembroidery import *
2022-04-19 07:57:06 +00:00
from test.pattern_for_tests import *
2019-07-15 23:46:18 +00:00
class TestTrims(unittest.TestCase):
def test_dst_trims(self):
file0 = "trim.dst"
2019-07-16 00:00:26 +00:00
pattern = get_fractal_pattern()
2019-07-15 23:46:18 +00:00
write_dst(pattern, file0)
loaded_pattern = read_dst(file0)
self.assertIsNotNone(loaded_pattern)
self.assertNotEqual(loaded_pattern.count_stitch_commands(TRIM), 0)
self.addCleanup(os.remove, file0)
def test_dst_trims_fail(self):
file0 = "trim.dst"
2019-07-16 00:00:26 +00:00
pattern = get_fractal_pattern()
2019-07-15 23:46:18 +00:00
write_dst(pattern, file0)
loaded_pattern = read_dst(file0, {"trim_at": 50}) # Lines beyond 50 jumps get a trim.
self.assertIsNotNone(loaded_pattern)
self.assertEqual(loaded_pattern.count_stitch_commands(TRIM), 0)
self.addCleanup(os.remove, file0)
def test_dst_trims_success(self):
file0 = "trim.dst"
2019-07-16 00:00:26 +00:00
pattern = get_fractal_pattern()
2019-07-15 23:46:18 +00:00
write_dst(pattern, file0, {"trim_at": 50}) # We make trim jumps big enough.
loaded_pattern = read_dst(file0, {"trim_at": 50, "clipping": False}) # Lines beyond 50 jumps get a trim.
self.assertIsNotNone(loaded_pattern)
self.assertNotEqual(loaded_pattern.count_stitch_commands(TRIM), 0)
self.addCleanup(os.remove, file0)
def test_jef_trims(self):
file0 = "trim.jef"
2019-07-16 00:00:26 +00:00
pattern = get_fractal_pattern()
2019-07-15 23:46:18 +00:00
write_jef(pattern, file0)
loaded_pattern = read_jef(file0)
self.assertIsNotNone(loaded_pattern)
self.assertNotEqual(loaded_pattern.count_stitch_commands(TRIM), 0)
self.addCleanup(os.remove, file0)
def test_jef_trims_off(self):
file0 = "trim.jef"
2019-07-16 00:00:26 +00:00
pattern = get_fractal_pattern()
2019-07-15 23:46:18 +00:00
write_jef(pattern, file0)
loaded_pattern = read_jef(file0, {"trim_distance": None})
self.assertEqual(loaded_pattern.count_stitch_commands(JUMP), 15)
self.assertIsNotNone(loaded_pattern)
self.assertEqual(loaded_pattern.count_stitch_commands(TRIM), 0)
self.addCleanup(os.remove, file0)
def test_jef_trims_commands(self):
file0 = "trim.jef"
2019-07-16 00:00:26 +00:00
pattern = get_fractal_pattern()
2019-07-15 23:46:18 +00:00
write_jef(pattern, file0, {"trims": True})
loaded_pattern = read_jef(file0, {"trim_distance": None})
self.assertEqual(loaded_pattern.count_stitch_commands(JUMP), 15)
self.assertEqual(loaded_pattern.count_stitch_commands(TRIM), 0)
loaded_pattern = read_jef(file0, {"trim_distance": None, "clipping": False})
self.assertEqual(loaded_pattern.count_stitch_commands(JUMP), 21)
self.assertEqual(loaded_pattern.count_stitch_commands(TRIM), 0)
loaded_pattern = read_jef(file0, {"trim_distance": None, "clipping": False, "trims": True, })
self.assertEqual(loaded_pattern.count_stitch_commands(JUMP), 21)
self.assertEqual(loaded_pattern.count_stitch_commands(TRIM), 2)
loaded_pattern = read_jef(file0, {"trim_distance": None, "trims": True})
self.assertEqual(loaded_pattern.count_stitch_commands(JUMP), 15)
self.assertEqual(loaded_pattern.count_stitch_commands(TRIM), 2)
self.addCleanup(os.remove, file0)