Merge branch 'master' into wip

This commit is contained in:
Matthias Koefferlein
2023-07-15 22:48:53 +02:00
238 changed files with 9840 additions and 7111 deletions
+29
View File
@@ -1156,6 +1156,35 @@ class DBLayoutTest(unittest.TestCase):
self.assertEqual(shape.property(42), None)
self.assertEqual(shape.property(42.0), None)
# Bug #1397
def test_bug1397(self):
testtmp = os.getenv("TESTTMP_WITH_NAME", os.getenv("TESTTMP", "."))
tmp = os.path.join(testtmp, "tmp.gds")
l = pya.Layout()
c = l.create_cell("test_cell")
li = pya.LayerInfo(1, 0)
t = pya.Trans.R180
c.add_meta_info(pya.LayoutMetaInfo("kfactory:li", li, None, True))
c.add_meta_info(pya.LayoutMetaInfo("kfactory:t", t, None, True))
l.write(tmp)
l2 = pya.Layout()
l2.read(tmp)
c2 = l2.cell("test_cell")
li = c2.meta_info("kfactory:li").value
self.assertEqual(li.layer, 1)
self.assertEqual(li.datatype, 0)
t = c2.meta_info("kfactory:t").value
self.assertEqual(str(t), "r180 0,0")
# run unit tests
if __name__ == '__main__':
+4
View File
@@ -122,6 +122,8 @@ class DBPolygonTests(unittest.TestCase):
b.assign_hole(1, [ pya.DPoint( 15, 25 ), pya.DPoint( 25, 25 ), pya.DPoint( 25, 65 ) ])
self.assertEqual( str(b), "(0,1;1,5;1,1/10,20;20,20;20,60)" )
b.insert_hole( [ pya.DPoint( 1, 2 ), pya.DPoint( 2, 2 ), pya.DPoint( 2, 6 ) ] )
self.assertEqual( str(b), "(0,1;1,5;1,1/10,20;20,20;20,60/1,2;2,2;2,6)" )
b.sort_holes()
self.assertEqual( str(b), "(0,1;1,5;1,1/1,2;2,2;2,6/10,20;20,20;20,60)" )
b.assign_hole(0, [ pya.DPoint( 15, 25 ), pya.DPoint( 25, 25 ), pya.DPoint( 25, 65 ) ])
self.assertEqual( str(b), "(0,1;1,5;1,1/15,25;25,25;25,65/10,20;20,20;20,60)" )
@@ -234,6 +236,8 @@ class DBPolygonTests(unittest.TestCase):
b.assign_hole(1, [ pya.Point( 15, 25 ), pya.Point( 25, 25 ), pya.Point( 25, 65 ) ])
self.assertEqual( str(b), "(0,1;1,5;1,1/10,20;20,20;20,60)" )
b.insert_hole( [ pya.Point( 1, 2 ), pya.Point( 2, 2 ), pya.Point( 2, 6 ) ] )
self.assertEqual( str(b), "(0,1;1,5;1,1/10,20;20,20;20,60/1,2;2,2;2,6)" )
b.sort_holes()
self.assertEqual( str(b), "(0,1;1,5;1,1/1,2;2,2;2,6/10,20;20,20;20,60)" )
b.assign_hole(0, [ pya.Point( 15, 25 ), pya.Point( 25, 25 ), pya.Point( 25, 65 ) ])
self.assertEqual( str(b), "(0,1;1,5;1,1/15,25;25,25;25,65/10,20;20,20;20,60)" )