Skip to content

Commit

Permalink
Merge pull request #138 from datosgobar/136-calificar-names-con-catal…
Browse files Browse the repository at this point in the history
…og-id

136 calificar names con catalog
  • Loading branch information
poligarcia committed Apr 9, 2018
2 parents 6a6a8f2 + 0087d8e commit 0ae1fcb
Show file tree
Hide file tree
Showing 3 changed files with 8 additions and 7 deletions.
4 changes: 2 additions & 2 deletions docs/MANUAL.md
Expand Up @@ -93,8 +93,8 @@ Toma los siguientes parámetros:
- **portal_url**: URL del portal de CKAN de destino.
- **apikey**: La apikey de un usuario del portal de destino con los permisos para crear el dataset bajo la
organización pasada como parámetro.
- **catalog_id** (opcional, default: None): El prefijo que va a preceder el id del dataset en el portal destino,
separado por un guión bajo.
- **catalog_id** (opcional, default: None): El prefijo que va a preceder el id y name del dataset en el portal
destino, separado por un guión.
- **demote_superThemes** (opcional, default: True):Si está en true, los ids de los themes del dataset, se escriben
como groups de CKAN.
- **demote_themes** (opcional, default: True): Si está en true, los labels de los themes del dataset, se escriben como
Expand Down
2 changes: 1 addition & 1 deletion pydatajson/ckan_utils.py
Expand Up @@ -21,7 +21,7 @@ def map_dataset_to_package(catalog, dataset, owner_org, catalog_id=None,
package['extras'] = []
# Obligatorios
package['id'] = catalog_id+'_'+dataset['identifier'] if catalog_id else dataset['identifier']
package['name'] = title_to_name(dataset['title'], decode=False)
package['name'] = title_to_name(catalog_id+'-'+dataset['title'] if catalog_id else dataset['title'])
package['title'] = dataset['title']
package['private'] = False
package['notes'] = dataset['description']
Expand Down
9 changes: 5 additions & 4 deletions tests/test_ckan_utils.py
Expand Up @@ -22,18 +22,19 @@ def setUpClass(cls):
cls.dataset_id = cls.dataset.get('identifier')
cls.distributions = cls.dataset['distribution']

def test_catalog_id_is_prepended_to_dataset_id_if_passed(self):
def test_catalog_id_is_prepended_to_dataset_id_and_name_if_passed(self):
package = map_dataset_to_package(self.catalog, self.dataset, 'owner', catalog_id=self.catalog_id)
self.assertEqual(self.catalog_id + '_' + self.dataset_id, package['id'])
self.assertEqual(title_to_name(self.catalog_id + '-' + self.dataset['title']), package['name'])

def test_dataset_id_is_preserved_if_catlog_id_is_not_passed(self):
def test_dataset_id_and_name_are_preserved_if_catalog_id_is_not_passed(self):
package = map_dataset_to_package(self.catalog, self.dataset, 'owner')
self.assertEqual(self.dataset_id, package['id'])
self.assertEqual(title_to_name(self.dataset['title']), package['name'])

def test_replicated_plain_attributes_are_corrext(self):
package = map_dataset_to_package(self.catalog, self.dataset, 'owner', catalog_id=self.catalog_id)
plain_replicated_attributes = [('title', 'title'),
('notes', 'description'),
plain_replicated_attributes = [('notes', 'description'),
('url', 'landingPage')]
for fst, snd in plain_replicated_attributes:
self.assertEqual(self.dataset.get(snd), package.get(fst))
Expand Down

0 comments on commit 0ae1fcb

Please sign in to comment.