ref(convert): durci les contrôles sur les URLs

This commit is contained in:
François Poulain 2020-08-08 11:32:46 +02:00
parent 1bfcbd6086
commit 8c3944b5bf

View File

@ -131,14 +131,21 @@ def convert_node(node, options):
type='article', url__in=list(node_urls.values_list('dst', flat=True))
)
spip_urls.count()
if spip_urls.exists() and (
sorted(spip_urls.values_list('url', flat=True))
!= sorted(node_urls.values_list('dst', flat=True))
or len(set(spip_urls.values_list('id_objet', flat=True))) != 1
):
# incohérence dans les urls
raise NotImplementedError
if spip_urls.exists():
article_id = spip_urls.first().id_objet
if (
sorted(spip_urls.values_list('url', flat=True))
!= sorted(node_urls.values_list('dst', flat=True))
or len(set(spip_urls.values_list('id_objet', flat=True))) != 1
or spip.Urls.objects.filter(
type='article', id_objet=article_id
).count() != spip_urls.count()
):
# incohérence dans les urls
raise ValueError(
"Cet article existe déjà dans SPIP sans qu'il soit possible "
"de s'assurer qu'il s'agisse d'un import prééexistant."
)
article = None
article_attributes = {