Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
def test_epsg():
with pytest.warns(FutureWarning):
assert CRS({"init": "EPSG:4326"}).to_epsg(20) == 4326
assert CRS({"init": "EPSG:4326"}).to_epsg() is None
assert CRS.from_user_input(4326).to_epsg() == 4326
assert CRS.from_epsg(4326).to_epsg() == 4326
assert CRS.from_user_input("epsg:4326").to_epsg() == 4326
def test_is_geocentric():
ccs = CRS.from_epsg(4328)
assert ccs.is_geocentric
def test_sub_crs():
crs = CRS.from_epsg(5972)
sub_crs_list = crs.sub_crs_list
assert len(sub_crs_list) == 2
assert sub_crs_list[0] == CRS.from_epsg(25832)
assert sub_crs_list[1] == CRS.from_epsg(5941)
assert crs.is_projected
assert crs.is_vertical
assert not crs.is_geographic
def test_area_of_use():
crs1 = CRS.from_epsg(4326)
assert crs1.area_of_use.bounds == (-180.0, -90.0, 180.0, 90.0)
assert crs1.area_of_use.name == "World"
def test_to_dict_from_dict():
cc = CRS.from_epsg(4326)
with pytest.warns(UserWarning):
assert CRS.from_dict(cc.to_dict()).name == "unknown"
def test_sub_crs__none():
assert CRS.from_epsg(4326).sub_crs_list == []
def test_crs_hash_unequal():
"""hashes of non-equivalent CRS are not equal"""
assert hash(CRS.from_epsg(3857)) != hash(CRS.from_epsg(4326))
def test_from_epsg():
proj = CRS.from_epsg(4326)
assert proj.to_epsg() == 4326
# Test with invalid EPSG code
with pytest.raises(CRSError):
assert CRS.from_epsg(0)
def test_ellipsoid():
crs1 = CRS.from_epsg(4326)
assert "{:.3f}".format(crs1.ellipsoid.inverse_flattening) == "298.257"
assert "{:.3f}".format(crs1.ellipsoid.semi_major_metre) == "6378137.000"
assert "{:.3f}".format(crs1.ellipsoid.semi_minor_metre) == "6356752.314"
def test_coordinate_operation():
crs = CRS.from_epsg(26915)
assert repr(crs.coordinate_operation) == (
"\n"
"UTM zone 15N\n"
"Area of Use:\n"
"- name: World - N hemisphere - 96ยฐW to 90ยฐW\n"
"- bounds: (-96.0, 0.0, -90.0, 84.0)"
)
assert crs.coordinate_operation.method_name == "Transverse Mercator"
assert crs.coordinate_operation.name == str(crs.coordinate_operation)
assert crs.coordinate_operation.method_auth_name == "EPSG"
assert crs.coordinate_operation.method_code == "9807"
assert crs.coordinate_operation.is_instantiable == 1
assert crs.coordinate_operation.has_ballpark_transformation == 0
assert crs.coordinate_operation.accuracy == -1.0
assert repr(crs.coordinate_operation.params) == (
"[Param(name=Latitude of natural origin, auth_name=EPSG, code=8801, "