def test_element(self): tests = [ ("self.testbrd5.get_element('U1_8_DISPLAY_2').get_geometry(layer_query='Top')", 6132383853822173047, "#ff0000"), ("shapely.ops.cascaded_union(Swoop.From(self.testbrd1).get_elements().get_geometry())", 3019186457803611298, "#000000"), ("self.testbrd1.get_element('U$1').get_geometry()", -3905289220812110970, "#000000"), ("self.testbrd1.get_element('U$2').get_geometry()", 7149781817599939921, "#000000"), ("self.testbrd1.get_element('U$2').get_geometry(layer_query='Top')", -592898454734508401, "#ff0000"), ("shapely.ops.cascaded_union(Swoop.From(self.testbrd1).get_elements().get_geometry(layer_query='Top'))", 8175878824730081580, "#ff0000"), ("shapely.ops.cascaded_union(Swoop.From(self.testbrd2).get_elements().get_geometry())", 8284983521792206760, "#000000"), ("shapely.ops.cascaded_union(Swoop.From(self.testbrd2).get_elements().get_geometry(layer_query='tPlace'))", 1859631802219965328, "#000000"), ("shapely.ops.cascaded_union(Swoop.From(self.testbrd2).get_elements().get_geometry(layer_query='bPlace'))", 2736247162424655875, "#000000"), ("shapely.ops.cascaded_union(Swoop.From(self.testbrd2).get_element('U$1').get_geometry(layer_query='Top'))", 3934072499983631454, "#ff0000"), ("shapely.ops.cascaded_union(Swoop.From(self.testbrd2).get_element('U$1').get_geometry(layer_query='Bottom'))", -2769906635547204865, "#0000ff"), ("shapely.ops.cascaded_union(Swoop.From(self.testbrd2).get_elements().get_geometry(layer_query='tTest2'))", -7429633510224712854, "#ff00ff"), ("shapely.ops.cascaded_union(Swoop.From(self.testbrd2).get_elements().get_geometry(layer_query='bTest2'))", -4332886659677625739, "#ff00ff"), #("shapely.ops.cascaded_union(self.boardtest.get_geometry())", 3638586739369071119, "#000000"), ("shapely.ops.cascaded_union(self.curvetest.get_geometry())", -1509359968350351720, "#000000"), ("shapely.ops.cascaded_union(Swoop.From(self.testbrd2).get_elements().get_geometry(layer_query='Holes'))", 7495755189664780231, "#000000"), ("shapely.ops.cascaded_union(Swoop.From(self.testbrd2).get_elements().get_geometry(layer_query='tKeepout', polygonize_wires=SEFP.POLYGONIZE_BEST_EFFORT))", 8476310128833764099, "#000000"), ("shapely.ops.cascaded_union(Swoop.From(self.textTest).get_geometry(layer_query='tPlace', polygonize_wires=SEFP.POLYGONIZE_BEST_EFFORT))", 1368976510290104576, "#000000") ] c = 0 # We compare the geometry the commands produced with a hash of the # correct geometry. If you need to update the correct answers, # uncomment the "dump" below, and comment out the assert. Run # "frameworkpython -m unittest test_Shapely.TestShapely.test_element" # and then look at all ???.pdf files. Check that they correct. When # they are replace the array above with the output of the command. # It's the commands with the updated hashes. Questions? ask Steve. for i in tests: geo = eval(i[0]) #dump(i, geo, i[0], c, i[2]) #print(geo) self.assertEqual(hash_geo(geo), i[1], "Geometry failure on test {}".format(c)) c = c + 1
def dump(test, geo, title, c, color): hash = hash_geo(geo) print("""("{}", {}, "{}"),""".format(test[0], hash, test[2]))