def make_layer_data_min_zoom(): yaml_path = find_yaml_path() layer_parse_result = parse_layers_min_zoom(yaml_path) by_name = {} for layer_datum in layer_parse_result.layer_data: by_name[layer_datum.layer] = layer_datum return layer_parse_result.layer_data, by_name
def make_layer_data_min_zoom(): yaml_path = find_yaml_path() layer_parse_result = parse_layers_min_zoom(yaml_path) by_name = {} for layer_datum in layer_parse_result.layer_data: by_name[layer_datum.layer] = layer_datum return layer_parse_result.layer_data, by_name
def test_all_kinds(self): """ Test that we've enumerated all the possible values for kind and kind_detail in the YAML files. """ from vectordatasource.meta import find_yaml_path from vectordatasource.meta.kinds import parse_all_kinds import os.path yaml_path = find_yaml_path() sort_rank_path = os.path.join( os.path.split(yaml_path)[0], 'spreadsheets', 'sort_rank') # should be able to execute this without throwing an exception. all_kinds = parse_all_kinds(yaml_path, sort_rank_path, True) # and we should get some data back self.assertTrue(all_kinds)
def write_sql(io): from vectordatasource.meta import find_yaml_path yaml_path = find_yaml_path() for output_fn, make_fn_name, force_type, return_type in ( (output_kind, make_function_name_props, None, 'JSON'), (output_min_zoom, make_function_name_min_zoom, float, 'REAL')): layer_result = parse_layers(yaml_path, output_fn, make_fn_name) assert isinstance(layer_result, LayerParseResult) for function_data in layer_result.layer_data: assert isinstance(function_data, FunctionData) ast_fn = function_data.ast ast_fn = GeomTypeTransformer().visit(ast_fn) visitor = SQLVisitor(io, force_type, return_type) visitor.visit(ast_fn) for layer, tables in LAYER_TABLES.items(): for table in tables: for calc, return_type in [('json', 'JSON'), ('min_zoom', 'REAL')]: print_adaptor(io, layer, table, calc, return_type)
def main(argv=None): from vectordatasource.meta import find_yaml_path if argv is None: argv = sys.argv yaml_path = find_yaml_path() formatter = astformatter.ASTFormatter() all_layer_data = [] for output_fn, make_fn_name in ((output_kind, make_function_name_props), (output_min_zoom, make_function_name_min_zoom)): layer_parse_result = parse_layers(yaml_path, output_fn, make_fn_name) all_layer_data.append(layer_parse_result.layer_data) for import_ast in layer_parse_result.import_asts: print formatter.format(import_ast, mode='exec') for layer_data in all_layer_data: for layer_datum in layer_data: ast_fn = layer_datum.ast print formatter.format(ast_fn, mode='exec')
def main(argv=None): from vectordatasource.meta import find_yaml_path if argv is None: argv = sys.argv yaml_path = find_yaml_path() formatter = astformatter.ASTFormatter() all_layer_data = [] for output_fn, make_fn_name in ( (output_kind, make_function_name_props), (output_min_zoom, make_function_name_min_zoom)): layer_parse_result = parse_layers( yaml_path, output_fn, make_fn_name) all_layer_data.append(layer_parse_result.layer_data) for import_ast in layer_parse_result.import_asts: print formatter.format(import_ast, mode='exec') for layer_data in all_layer_data: for layer_datum in layer_data: ast_fn = layer_datum.ast print formatter.format(ast_fn, mode='exec')
def find_yaml_path(): from vectordatasource.meta import find_yaml_path return find_yaml_path()
from vectordatasource.meta.kinds import parse_all_kinds if __name__ == '__main__': from vectordatasource.meta import find_yaml_path import argparse import os.path yaml_path = find_yaml_path() sort_rank_path = os.path.join( os.path.split(yaml_path)[0], 'spreadsheets', 'sort_rank') parser = argparse.ArgumentParser() parser.add_argument('--yaml-path', help='Directory containing YAML', default=yaml_path) parser.add_argument('--sort-rank-path', help='Directory containing sort ' 'rank CSVs.', default=sort_rank_path) parser.add_argument('--kind-detail', help='Include kind_detail.', action='store_true', default=False) args = parser.parse_args() if args.yaml_path: yaml_path = args.yaml_path if args.sort_rank_path: sort_rank_path = args.sort_rank_path all_kinds = parse_all_kinds(yaml_path, sort_rank_path, args.kind_detail) row_fmt = "%(layer)12s %(kind)30s %(min_zoom)8s %(sort_rank)s" if args.kind_detail: row_fmt = "%(layer)12s %(kind)30s %(kind_detail)30s " \
from vectordatasource.meta.kinds import parse_all_kinds if __name__ == '__main__': from vectordatasource.meta import find_yaml_path import argparse import os.path yaml_path = find_yaml_path() sort_rank_path = os.path.join( os.path.split(yaml_path)[0], 'spreadsheets', 'sort_rank') parser = argparse.ArgumentParser() parser.add_argument('--yaml-path', help='Directory containing YAML', default=yaml_path) parser.add_argument('--sort-rank-path', help='Directory containing sort ' 'rank CSVs.', default=sort_rank_path) parser.add_argument('--kind-detail', help='Include kind_detail.', action='store_true', default=False) args = parser.parse_args() if args.yaml_path: yaml_path = args.yaml_path if args.sort_rank_path: sort_rank_path = args.sort_rank_path all_kinds = parse_all_kinds(yaml_path, sort_rank_path, args.kind_detail)
def find_yaml_path(): from vectordatasource.meta import find_yaml_path return find_yaml_path()