From 0b7015f2ec7eace79b37afc56b2d42d81a616a50 Mon Sep 17 00:00:00 2001 From: Lucas Romero Date: Wed, 8 Aug 2018 12:25:03 -0300 Subject: [PATCH 1/2] Agrego None a la cuenta de los indicadores no numericos --- pydatajson/indicators.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pydatajson/indicators.py b/pydatajson/indicators.py index 92b03c3..6d3b266 100644 --- a/pydatajson/indicators.py +++ b/pydatajson/indicators.py @@ -674,4 +674,4 @@ def _filter_by_likely_publisher(central_datasets, catalog_datasets): def count_fields(targets, field): """Cuenta la cantidad de values en el key especificado de una lista de diccionarios""" - return Counter([target[field] for target in targets if field in target]) + return Counter([target.get(field) or 'None' for target in targets]) From 4085c4d431e50db40f64f4ea644c73077a0dbae8 Mon Sep 17 00:00:00 2001 From: Lucas Romero Date: Wed, 8 Aug 2018 12:28:51 -0300 Subject: [PATCH 2/2] Actualizo tests --- tests/test_indicators.py | 32 ++++++++++++++++++++------------ 1 file changed, 20 insertions(+), 12 deletions(-) diff --git a/tests/test_indicators.py b/tests/test_indicators.py index 10cf305..238c3c0 100644 --- a/tests/test_indicators.py +++ b/tests/test_indicators.py @@ -96,7 +96,8 @@ def test_format_indicators(self): 'distribuciones_formatos_cant': { 'CSV': 1, 'XLSX': 1, - 'PDF': 1 + 'PDF': 1, + 'None': 3 } } @@ -113,6 +114,7 @@ def test_license_indicators(self): 'datasets_licencias_cant': { 'Open Data Commons Open Database License 1.0': 1, 'Creative Commons Attribution': 1, + 'None': 1 } } @@ -124,7 +126,7 @@ def test_no_licenses_indicators(self): # No tienen licencias catalog = os.path.join(self.SAMPLES_DIR, "several_datasets_for_harvest.json") indicators = self.dj.generate_catalogs_indicators(catalog)[0][0] - assert_equal(indicators['datasets_licencias_cant'], {}) + assert_equal(indicators['datasets_licencias_cant'], {'None': 3}) @my_vcr.use_cassette() def test_field_indicators_on_min_catalog(self): @@ -262,14 +264,17 @@ def test_network_indicators(self): 'distribuciones_formatos_cant': { 'CSV': 2, 'XLSX': 1, - 'PDF': 2 + 'PDF': 2, + 'None': 3 }, 'distribuciones_tipos_cant': { 'file': 1, - 'documentation': 1 + 'documentation': 1, + 'None': 6 }, 'datasets_licencias_cant': { 'Open Data Commons Open Database License 1.0': 2, + 'None': 3 }, 'campos_optativos_pct': 32.56, 'campos_recomendados_pct': 50.72, @@ -296,6 +301,7 @@ def test_network_license_indicators(self): 'datasets_licencias_cant': { 'Open Data Commons Open Database License 1.0': 3, 'Creative Commons Attribution': 1, + 'None': 1 }, } @@ -320,10 +326,11 @@ def test_network_type_indicators(self): 'catalogos_cant': 2, 'distribuciones_cant': 8, 'distribuciones_tipos_cant': { - "file": 2, - "file.upload": 1, - "documentation": 2, - "api": 2 + 'file': 2, + 'file.upload': 1, + 'documentation': 2, + 'api': 2, + 'None': 1, } } @@ -338,10 +345,11 @@ def test_types_indicators(self): expected = { 'distribuciones_tipos_cant': { - "file": 1, - "file.upload": 1, - "documentation": 1, - "api": 2 + 'file': 1, + 'file.upload': 1, + 'documentation': 1, + 'api': 2, + 'None': 1 } }