コード例 #1
0
def test_rq14_with_gpkg_geometry_type_valid_check():
    dataset = open_dataset("tests/data/test_allcorrect.gpkg")
    geometry_type_names = dataset_geometry_tables(dataset)
    result = GpkgGeometryTypeNameValidator(dataset).gpkg_geometry_valid_check(
        geometry_type_names
    )
    assert len(result) == 0
コード例 #2
0
def test_ccw_with_gpkg():
    dataset = open_dataset("tests/data/test_geometry_valid.gpkg")
    checks = list(query_ccw(dataset))
    assert len(checks) == 1
    assert checks[0][0] == "test_geometry_valid"
    assert checks[0][1] == 1
    assert checks[0][2] == 1
コード例 #3
0
def test_with_gpkg_falsenegative():
    dataset = open_dataset("tests/data/test_layerfeature_falsenegative.gpkg")
    checks = list(query_layerfeature_counts(dataset))
    assert len(checks) == 1
    assert checks[0][0] == "test_layerfeature_falsenegative"
    assert checks[0][1] == 1
    assert checks[0][2] == 0
コード例 #4
0
def test_with_gpkg_allcorrect():
    dataset = open_dataset("tests/data/test_allcorrect.gpkg")
    checks = list(query_layerfeature_counts(dataset))
    assert len(checks) == 1
    assert checks[0][0] == "test_allcorrect"
    assert checks[0][1] == 1
    assert checks[0][2] == 1
コード例 #5
0
def test_with_gpkg_allcorrect():
    dataset = open_dataset("tests/data/test_allcorrect.gpkg")
    checks = list(query_columnames(dataset))
    assert len(checks) == 2
    assert checks[0][0] == "test_allcorrect"
    assert checks[0][1] == "fid"
    assert checks[1][0] == "test_allcorrect"
    assert checks[1][1] == "geom"
コード例 #6
0
def test_with_gpkg():
    dataset = open_dataset("tests/data/test_columnname.gpkg")
    checks = list(query_columnames(dataset))
    assert len(checks) == 2
    assert checks[0][0] == "test_columnname"
    assert checks[0][1] == "fid"
    assert checks[1][0] == "test_columnname"
    assert checks[1][1] == "GEOmetry"
コード例 #7
0
def test_rq15_with_gpkg_geometry_type_equals_gpkg_definition_invalid_check():
    dataset = open_dataset("tests/data/test_geometry_type.gpkg")
    result = list(GeometryTypeEqualsGpkgDefinitionValidator(dataset).check())
    assert len(result) == 1
    assert (
        result[0]
        == "Error layer: test_geometry_type, found geometry: GEOMETRYCOLLECTION that should be COMPOUNDCURVE, 1 time, example id: 1"
    )
コード例 #8
0
def test_with_gpkg():
    dataset = open_dataset("tests/data/test_geometry_valid.gpkg")
    checks = list(query_geometry_valid(dataset))
    assert len(checks) == 1
    assert checks[0][0] == "test_geometry_valid"
    assert checks[0][1] == "geometry"
    assert checks[0][2] == "Self-intersection"
    assert checks[0][3] == 1
    assert checks[0][4] == 1
コード例 #9
0
def test_with_gpkg():
    dataset = open_dataset("tests/data/test_geom_columnname.gpkg")
    checks = list(dataset_geometry_tables(dataset))
    assert len(checks) == 3
    assert checks[0][0] == "test_columnname"
    assert checks[0][1] == "geom"
    assert checks[1][0] == "test_columnname2"
    assert checks[1][1] == "geometry"
    assert checks[2][0] == "test_columnname3"
    assert checks[2][1] == "geometry"
コード例 #10
0
def test_rq14_with_gpkg_geometry_type_invalid_check():
    dataset = open_dataset("tests/data/test_geometry_type.gpkg")
    geometry_type_names = dataset_geometry_tables(dataset)
    result = GpkgGeometryTypeNameValidator(dataset).gpkg_geometry_valid_check(
        geometry_type_names
    )
    assert len(result) == 1
    assert (
        result[0]
        == "Found geometry_type_name: COMPOUNDCURVE for table test_geometry_type (from the gpkg_geometry_columns table)."
    )
コード例 #11
0
def test_with_gdal_error():
    results = []

    # Register GDAL error handler function
    def gdal_error_handler(err_class, err_num, error):
        results.append("GDAL_ERROR")

    dataset = open_dataset("tests/data/test_gdal_error.gpkg",
                           gdal_error_handler)
    validations = dataset.ExecuteSQL('select rtreecheck("rtree_table_geom");')
    dataset.ReleaseResultSet(validations)
    assert results[0] == "GDAL_ERROR"
    assert len(results) == 1
コード例 #12
0
def test_with_gpkg():
    expected = [
        ("test_dimensions", "more than two dimensions."),
        ("test_dimensions3", "more than two dimensions."),
        ("test_dimensions3", "an elevation (Z) dimension that are all 0."),
        ("test_dimensions4", "more than two dimensions."),
        ("test_dimensions4", "a measurement (M) dimension that are all 0."),
        ("test_dimensions4", "an elevation (Z) dimension that are all 0."),
        ("test_dimensions4_correct", "more than two dimensions."),
        ("test_dimensions3_correct", "more than two dimensions."),
    ]
    dataset = open_dataset("tests/data/test_dimensions.gpkg")
    checks = list(query_dimensions(dataset))
    assert checks == expected
コード例 #13
0
def test_silence_between_gdal_errors():
    results = []

    # Register GDAL error handler function
    def gdal_error_handler(err_class, err_num, error):
        print(results)
        results.append("GDAL_ERROR")

    dataset = open_dataset("tests/data/test_gdal_error.gpkg",
                           gdal_error_handler)
    do_something_with_error_gdal(dataset)
    do_something_silenced_gdal(dataset)
    do_something_with_error_gdal(dataset)

    assert len(results) == 2
    assert results == ["GDAL_ERROR", "GDAL_ERROR"]
コード例 #14
0
def test_with_gpkg_allcorrect():
    dataset = open_dataset("tests/data/test_allcorrect.gpkg")
    checks = list(query_layernames(dataset))
    assert len(checks) == 1
    assert checks[0] == "test_allcorrect"
コード例 #15
0
def test_with_gpkg_allcorrect():
    dataset = open_dataset("tests/data/test_allcorrect.gpkg")
    checks = list(query_db_views(dataset))
    assert len(checks) == 0
コード例 #16
0
def test_with_gpkg():
    dataset = open_dataset("tests/data/test_db_views.gpkg")
    checks = list(query_db_views(dataset))
    assert len(checks) == 1
    assert checks[0] == "wrong_view"
コード例 #17
0
def test_rq15_with_gpkg_geometry_type_equals_gpkg_definition_valid_check():
    dataset = open_dataset("tests/data/test_allcorrect.gpkg")
    result = list(GeometryTypeEqualsGpkgDefinitionValidator(dataset).check())
    assert len(result) == 0
コード例 #18
0
def test_with_gpkg():
    dataset = open_dataset("tests/data/test_rtree_valid.gpkg", lambda x: None)
    checks = list(rtree_valid_check_query(dataset))
    assert len(checks) == 1
    assert checks[0] == "Found (1 -> 2) in %_rowid table, expected (1 -> 1)"
コード例 #19
0
def test_with_gpkg_allcorrect():
    dataset = open_dataset("tests/data/test_allcorrect.gpkg", lambda x: None)
    checks = list(rtree_valid_check_query(dataset))
    assert len(checks) == 0
コード例 #20
0
def test_with_gpkg():
    dataset = open_dataset("tests/data/test_featureid.gpkg")
    checks = list(query_feature_id(dataset))
    assert len(checks) == 1
    assert checks[0][0] == "test_featureid"
    assert checks[0][1] == 0
コード例 #21
0
def test_with_gpkg():
    dataset = open_dataset("tests/data/test_layername.gpkg")
    checks = list(query_layernames(dataset))
    assert len(checks) == 1
    assert checks[0] == "test_LAYERNAME"
コード例 #22
0
def test_rtrees_query_has_no_result_on_table__with_no_geometry():
    dataset = open_dataset("tests/data/test_correct_attribute.gpkg")
    checks = list(query_rtree_presence(dataset))
    assert len(checks) == 0
コード例 #23
0
def test_with_gpkg():
    dataset = open_dataset("tests/data/test_rtree_present_alltables.gpkg")
    checks = list(query_rtree_presence(dataset))
    assert len(checks) == 1
    assert checks[0] == "no table has an rtree index"
コード例 #24
0
def test_singletable_with_gpkg():
    dataset = open_dataset("tests/data/test_rtree_present_single_table.gpkg")
    checks = list(query_rtree_presence(dataset))
    assert len(checks) == 1
    assert checks[0] == "test_rtree_present_single_table"
コード例 #25
0
def test_rq3_with_gpkg():
    dataset = open_dataset("tests/data/test_geometry_type.gpkg")
    checks = list(query_geometry_types(dataset))
    assert len(checks) == 1
    assert checks[0][0] == "test_geometry_type"
    assert checks[0][1] == "COMPOUNDCURVE"
コード例 #26
0
def test_with_gpkg_allcorrect():
    dataset = open_dataset("tests/data/test_allcorrect.gpkg")
    checks = list(query_rtree_presence(dataset))
    assert len(checks) == 0
コード例 #27
0
def test_rq3_with_gpkg_allcorrect():
    dataset = open_dataset("tests/data/test_allcorrect.gpkg")
    checks = list(query_geometry_types(dataset))
    assert len(checks) == 0