(self)
| 1116 | |
| 1117 | # Bug #109 |
| 1118 | def test_bug109(self): |
| 1119 | |
| 1120 | testtmp = os.getenv("TESTTMP_WITH_NAME", os.getenv("TESTTMP", ".")) |
| 1121 | |
| 1122 | file_gds = os.path.join(testtmp, "bug109.gds") |
| 1123 | file_oas = os.path.join(testtmp, "bug109.oas") |
| 1124 | |
| 1125 | ly = pya.Layout() |
| 1126 | top = ly.create_cell("TOP") |
| 1127 | l1 = ly.layer(1, 0) |
| 1128 | shape = top.shapes(l1).insert(pya.Box(0, 10, 20, 30)) |
| 1129 | shape.set_property(2, "hello, world") |
| 1130 | shape.set_property("42", "the answer") |
| 1131 | |
| 1132 | ly.write(file_gds) |
| 1133 | |
| 1134 | opt = pya.SaveLayoutOptions() |
| 1135 | opt.format = "OASIS" |
| 1136 | opt.oasis_strict_mode = False |
| 1137 | ly.write(file_oas, opt) |
| 1138 | |
| 1139 | ly2 = pya.Layout() |
| 1140 | ly2.read(file_gds) |
| 1141 | l2 = ly2.layer(1, 0) |
| 1142 | shape = None |
| 1143 | for s in ly2.top_cell().shapes(l2).each(): |
| 1144 | shape = s |
| 1145 | self.assertEqual(shape.property(2), "hello, world") |
| 1146 | self.assertEqual(shape.property("2"), None) |
| 1147 | self.assertEqual(shape.property(2.0), None) |
| 1148 | self.assertEqual(shape.property(22), None) |
| 1149 | self.assertEqual(shape.property(42), "the answer") |
| 1150 | self.assertEqual(shape.property("42"), None) |
| 1151 | self.assertEqual(shape.property(42.0), None) |
| 1152 | |
| 1153 | ly2 = pya.Layout() |
| 1154 | ly2.read(file_oas) |
| 1155 | l2 = ly2.layer(1, 0) |
| 1156 | shape = None |
| 1157 | for s in ly2.top_cell().shapes(l2).each(): |
| 1158 | shape = s |
| 1159 | self.assertEqual(shape.property(2), "hello, world") |
| 1160 | self.assertEqual(shape.property("2"), None) |
| 1161 | self.assertEqual(shape.property(2.0), None) |
| 1162 | self.assertEqual(shape.property(22), None) |
| 1163 | self.assertEqual(shape.property("42"), "the answer") |
| 1164 | self.assertEqual(shape.property(42), None) |
| 1165 | self.assertEqual(shape.property(42.0), None) |
| 1166 | |
| 1167 | # Bug #1397 |
| 1168 | def test_bug1397(self): |
nothing calls this directly
no test coverage detected