diff --git a/hxlm/core/bin/urnresolver.py b/hxlm/core/bin/urnresolver.py index f93d8ef..000f9c3 100755 --- a/hxlm/core/bin/urnresolver.py +++ b/hxlm/core/bin/urnresolver.py @@ -117,6 +117,24 @@ def make_args_urnresolver(self): "Resource Name (URI) to Uniform Resource " + "Identifier (URI)")) + parser.add_argument( + '--debug', + help='instead of return the result, do full debug', + action='store_const', + const=True, + default=False + ) + + parser.add_argument( + '--config', + help='instead of return the result, do full debug', + metavar='config_file', + type=str, + # action='store_const', + # const=True, + default=False + ) + self.args = parser.parse_args() return self.args @@ -127,17 +145,22 @@ def execute_cli(self, args, called will convert the HXL source to example format. """ + # print('args', args) urn_item = HUrn.cast_urn(urn=args.infile) urn_item.prepare() - # valt = HUrnUtil.get_urn_vault_local_info('un', 'locode') - HUrnUtil.debug_local_data('un', 'locode') - HUrnUtil.get_urn_vault_local_info(urn_item) - - # print('valt', valt) - print(args.infile, urn_item) - print('about', urn_item.about()) - print('about base_paths', urn_item.about('base_paths')) - print('about object_names', urn_item.about('object_names')) + + if 'debug' in args and args.debug: + # valt = HUrnUtil.get_urn_vault_local_info('un', 'locode') + HUrnUtil.debug_local_data('un', 'locode') + HUrnUtil.get_urn_vault_local_info(urn_item) + + # print('valt', valt) + print(args.infile, urn_item) + print('about', urn_item.about()) + print('about base_paths', urn_item.about('base_paths')) + print('about object_names', urn_item.about('object_names')) + + print(urn_item.get_resources()) # print('args', args) # print('args', args) diff --git a/tests/urnresolver/README.md b/tests/urnresolver/README.md new file mode 100644 index 0000000..ac945aa --- /dev/null +++ b/tests/urnresolver/README.md @@ -0,0 +1,3 @@ +# tests/urnresolver +The test files on this directory are used when you want to explicitly enforce +an exact match of an URN in offline mode. diff --git a/tests/urnresolver/csv/urnresolver.csv b/tests/urnresolver/csv/urnresolver.csv new file mode 100644 index 0000000..d237669 --- /dev/null +++ b/tests/urnresolver/csv/urnresolver.csv @@ -0,0 +1,4 @@ +"#item+urn","#x_source" +"urn:data:xz:hxl:std:core:hashtag","https://docs.google.com/spreadsheets/d/1En9FlmM8PrbTWgl3UHPF_MXnJ6ziVZFhBbojSJzBdLI/pub?gid=319251406&single=true&output=csv" +"urn:data:xz:hxl:std:core:attribute","https://docs.google.com/spreadsheets/d/1En9FlmM8PrbTWgl3UHPF_MXnJ6ziVZFhBbojSJzBdLI/pub?gid=1810309357&single=true&output=csv" +"urn:data:xz:hxlcplp:fod:lang","https://proxy.hxlstandard.org/data.csv?dest=data_view&url=https%3A%2F%2Fdocs.google.com%2Fspreadsheets%2Fd%2F12k4BWqq5c3mV9ihQscPIwtuDa_QRB-iFohO7dXSSptI%2Fedit%23gid%3D0" diff --git a/tests/urnresolver/json/urnresolver.json b/tests/urnresolver/json/urnresolver.json new file mode 100644 index 0000000..0acfbbd --- /dev/null +++ b/tests/urnresolver/json/urnresolver.json @@ -0,0 +1,20 @@ +[ + { + "urn": "urn:data:xz:hxl:std:core:hashtag", + "source": [ + "https://docs.google.com/spreadsheets/d/1En9FlmM8PrbTWgl3UHPF_MXnJ6ziVZFhBbojSJzBdLI/pub?gid=319251406&single=true&output=csv" + ] + }, + { + "urn": "urn:data:xz:hxl:std:core:attribute", + "source": [ + "https://docs.google.com/spreadsheets/d/1En9FlmM8PrbTWgl3UHPF_MXnJ6ziVZFhBbojSJzBdLI/pub?gid=1810309357&single=true&output=csv" + ] + }, + { + "urn": "urn:data:xz:hxlcplp:fod:lang", + "source": [ + "https://proxy.hxlstandard.org/data.csv?dest=data_view&url=https%3A%2F%2Fdocs.google.com%2Fspreadsheets%2Fd%2F12k4BWqq5c3mV9ihQscPIwtuDa_QRB-iFohO7dXSSptI%2Fedit%23gid%3D0" + ] + } + ] \ No newline at end of file diff --git a/tests/urnresolver/yaml/urnresolver.yml b/tests/urnresolver/yaml/urnresolver.yml new file mode 100644 index 0000000..23f3843 --- /dev/null +++ b/tests/urnresolver/yaml/urnresolver.yml @@ -0,0 +1,16 @@ +--- + +# TODO: when URNResolver start to undestand CKAN instances, also put as +# extra source CKAN instead of direct access Gooogle Drive +# (Emerson Rocha, 2021-03-06 20:01 UTC) + +# https://data.humdata.org/dataset/hxl-core-schemas +- urn: "urn:data:xz:hxl:std:core:hashtag" + source: + - https://docs.google.com/spreadsheets/d/1En9FlmM8PrbTWgl3UHPF_MXnJ6ziVZFhBbojSJzBdLI/pub?gid=319251406&single=true&output=csv +- urn: "urn:data:xz:hxl:std:core:attribute" + source: + - https://docs.google.com/spreadsheets/d/1En9FlmM8PrbTWgl3UHPF_MXnJ6ziVZFhBbojSJzBdLI/pub?gid=1810309357&single=true&output=csv +- urn: "urn:data:xz:hxlcplp:fod:lang" + source: + - https://proxy.hxlstandard.org/data.csv?dest=data_view&url=https%3A%2F%2Fdocs.google.com%2Fspreadsheets%2Fd%2F12k4BWqq5c3mV9ihQscPIwtuDa_QRB-iFohO7dXSSptI%2Fedit%23gid%3D0 \ No newline at end of file