Ejemplo n.º 1
0
class TestReactors(unittest.TestCase):
    def setUp(self):
        self.entity = DXFEntity(ClassifiedTags.from_text(LINE_DATA))

    def test_has_no_reactors(self):
        self.assertFalse(self.entity.has_reactors())

    def test_set_reactors(self):
        self.entity.set_reactors(['A000', 'B000', 'C000'])
        self.assertTrue(self.entity.has_reactors())
        handles = self.entity.get_reactors()
        self.assertEqual(['A000', 'B000', 'C000'], handles)

    def test_append_handle(self):
        self.entity.set_reactors([])
        self.assertEqual(0, len(self.entity.get_reactors()))
        self.entity.append_reactor_handle('A000')
        self.assertTrue('A000' in self.entity.get_reactors())
        self.entity.append_reactor_handle('B000')
        self.assertTrue('B000' in self.entity.get_reactors())
        self.assertEqual(2, len(self.entity.get_reactors()))

        self.entity.append_reactor_handle('B000')  # same handle again
        self.assertTrue('B000' in self.entity.get_reactors())
        self.assertEqual(2, len(self.entity.get_reactors()), 'handle entries should be unique')

        self.entity.append_reactor_handle('FF')  # smallest handle, should be first handle in reactors
        self.assertEqual('FF', self.entity.get_reactors()[0])

        self.entity.append_reactor_handle('FFFF')  # biggest handle, should be last handle in reactors
        self.assertEqual('FFFF', self.entity.get_reactors()[-1])

    def test_remove_handle(self):
        self.entity.set_reactors(['A000', 'B000', 'C000'])
        self.entity.remove_reactor_handle('A000')
        self.assertEqual(2, len(self.entity.get_reactors()), 'Handle not deleted')
        self.entity.remove_reactor_handle('FFFF')  # ignore not existing handles
        self.assertEqual(2, len(self.entity.get_reactors()))
Ejemplo n.º 2
0
 def setUp(self):
     self.entity = DXFEntity(ClassifiedTags.from_text(LINE_DATA))
Ejemplo n.º 3
0
class TestXData(unittest.TestCase):
    def setUp(self):
        self.entity = DXFEntity(ClassifiedTags.from_text(LINE_DATA))

    def test_new_app_data(self):
        self.assertFalse(self.entity.has_xdata('MOZMAN'))
        self.entity.set_xdata('MOZMAN', xdata_tags=[DXFTag(1000, 'Extended Data String')])
        self.assertTrue(self.entity.has_xdata('MOZMAN'))

    def test_get_xdata(self):
        self.entity.set_xdata('MOZMAN', xdata_tags=[DXFTag(1000, 'Extended Data String')])

        xdata = self.entity.get_xdata('MOZMAN')
        self.assertEqual(1, len(xdata))
        self.assertEqual(DXFTag(1000, 'Extended Data String'), xdata[0])

    def test_set_xdata(self):
        self.entity.set_xdata('MOZMAN', xdata_tags=[DXFTag(1000, 'Extended Data String')])
        xdata = self.entity.get_xdata('MOZMAN')
        self.assertEqual(1, len(xdata))
        self.assertEqual(DXFTag(1000, 'Extended Data String'), xdata[0])
        xdata.append(DXFTag(1000, 'Extended Data String2'))
        self.entity.set_xdata('MOZMAN', xdata)

        xdata = self.entity.get_xdata('MOZMAN')
        self.assertEqual(2, len(xdata))
        self.assertEqual(DXFTag(1000, 'Extended Data String'), xdata[0])
        self.assertEqual(DXFTag(1000, 'Extended Data String2'), xdata[1])

    def test_not_existing_appid(self):
        with self.assertRaises(ValueError):
            self.entity.get_xdata("XYZ")
Ejemplo n.º 4
0
class TestAppData(unittest.TestCase):
    def setUp(self):
        self.entity = DXFEntity(ClassifiedTags.from_text(LINE_DATA))

    def test_new_app_data(self):
        self.assertFalse(self.entity.has_app_data('{MOZMAN'))
        self.entity.set_app_data('{MOZMAN', app_data_tags=[DXFTag(330, 'DEAD')])
        self.assertTrue(self.entity.has_app_data('{MOZMAN'))

    def test_get_app_data(self):
        self.entity.set_app_data('{MOZMAN', app_data_tags=[DXFTag(330, 'DEAD')])

        app_data = self.entity.get_app_data('{MOZMAN')
        self.assertEqual(1, len(app_data))
        self.assertEqual(DXFTag(330, 'DEAD'), app_data[0])

    def test_set_app_data(self):
        self.entity.set_app_data('{MOZMAN', app_data_tags=[DXFTag(330, 'DEAD')])
        app_data = self.entity.get_app_data('{MOZMAN')
        self.assertEqual(1, len(app_data))
        self.assertEqual(DXFTag(330, 'DEAD'), app_data[0])
        app_data.append(DXFTag(360, 'DEAD2'))
        self.entity.set_app_data('{MOZMAN', app_data)

        app_data = self.entity.get_app_data('{MOZMAN')
        self.assertEqual(2, len(app_data))
        self.assertEqual(DXFTag(330, 'DEAD'), app_data[0])
        self.assertEqual(DXFTag(360, 'DEAD2'), app_data[1])

    def test_not_existing_appid(self):
        with self.assertRaises(ValueError):
            self.entity.get_app_data("XYZ")
Ejemplo n.º 5
0
 def entity(self):
     return DXFEntity(ExtendedTags.from_text(LINE_DATA))
Ejemplo n.º 6
0
 def delete_entity(self, entity: DXFEntity) -> None:
     entity.destroy()
     self.delete_handle(entity.dxf.handle)
Ejemplo n.º 7
0
 def setUp(self):
     self.entity = DXFEntity(ExtendedTags.from_text(LINE_DATA))