Import dissemination rules list
authorSylvain Thénault <sylvain.thenault@logilab.fr>
Thu, 02 Mar 2017 19:10:11 +0100
changeset 2416 74a05cb37aa5
parent 2415 b9f3c646fcc6
child 2438 fed3aae5493d
Import dissemination rules list
cubicweb_seda/dataimport.py
cubicweb_seda/hooks.py
cubicweb_seda/migration/0.8.0_Any.py
cubicweb_seda/migration/data/dissemination.csv
test/test_dataimport.py
test/test_hooks.py
--- a/cubicweb_seda/dataimport.py	Thu Mar 02 20:12:17 2017 +0100
+++ b/cubicweb_seda/dataimport.py	Thu Mar 02 19:10:11 2017 +0100
@@ -62,6 +62,9 @@
     (u"SEDA : Codes de restriction d'accès",
      'seda_rule', 'SEDASeqAccessRuleRule',
      'access_control.csv'),
+    (u"SEDA : Règles de diffusion",
+     'seda_rule', 'SEDASeqDisseminationRuleRule',
+     'dissemination.csv'),
     (u"SEDA : Types d'objets-données",
      'seda_type_to', (),
      'document_type_code.csv'),
--- a/cubicweb_seda/hooks.py	Thu Mar 02 20:12:17 2017 +0100
+++ b/cubicweb_seda/hooks.py	Thu Mar 02 19:10:11 2017 +0100
@@ -189,10 +189,10 @@
         ('seda_relationship_code_list_version', 'seda_type_relationship', None),
         ('seda_access_rule_code_list_version', 'seda_rule', 'SEDASeqAccessRuleRule'),
         ('seda_appraisal_rule_code_list_version', 'seda_rule', 'SEDASeqAppraisalRuleRule'),
+        ('seda_dissemination_rule_code_list_version', 'seda_rule', 'SEDASeqDisseminationRuleRule'),
         # 'seda_compression_algorithm_code_list_version',
         # 'seda_classification_rule_code_list_version',
         # 'seda_reuse_rule_code_list_version',
-        # 'seda_dissemination_rule_code_list_version',
         # 'seda_storage_rule_code_list_version',
         # 'seda_acquisition_information_code_list_version',
     ]
--- a/cubicweb_seda/migration/0.8.0_Any.py	Thu Mar 02 20:12:17 2017 +0100
+++ b/cubicweb_seda/migration/0.8.0_Any.py	Thu Mar 02 19:10:11 2017 +0100
@@ -22,7 +22,7 @@
     drop_entity_type(etype)
 
 lcsv_files = [file_def for file_def in LCSV_FILES
-              if file_def[-1] in ('legal_status.csv', 'digest_algorithms.csv')]
+              if file_def[-1] in ('legal_status.csv', 'digest_algorithms.csv', 'dissemination.csv')]
 import_seda_schemes(cnx, lcsv_files=lcsv_files)
 
 drop_relation_type('seda_reply_code_list_version')
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/cubicweb_seda/migration/data/dissemination.csv	Thu Mar 02 19:10:11 2017 +0100
@@ -0,0 +1,22 @@
+#;$id;label;alt label
+type;url;string;string
+lang;;en;en
+url;skos:Concept;skos:prefLabel;skos:altLabel
+;;Délai indexation moteur de recherche internet - 120 ans- Vie privée;Vie privée
+;;Délai indexation moteur de recherche internet - 120 ans- Mariage;Mariage
+;;Délai indexation moteur de recherche internet - 120 ans- Naissance;Naissance
+;;Délai indexation moteur de recherche internet - 120 ans- Décès;Décès
+;;Délai indexation moteur de recherche internet - 120 ans- Tables décennales;Tables décennales
+;;Délai indexation moteur de recherche - 120 ans- Vie privée;Vie privée
+;;Délai indexation moteur de recherche -100 ans- Mariage;Mariage
+;;Délai indexation moteur de recherche -120 ans- Naissance;Naissance
+;;Délai indexation moteur de recherche -75 ans- Décès;Décès
+;;Délai indexation moteur de recherche -Selon NMD- Tables décennales;Tables décennales
+;;Délai mise en ligne - 50 ans- Vie privée;Vie privée
+;;Délai mise en ligne - 75 ans- Mariage;Mariage
+;;Délai mise en ligne - 75 ans sans mention marginale / 100 ans- Naissance;Naissance
+;;Délai mise en ligne - 25 ans- Décès;Décès
+;;Délai mise en ligne - Selon NMD- Tables décennales;Tables décennales
+;;Délai mise en ligne - 150 ans- Affaires portées devant les juridictions;Affaires portées devant les juridictions
+;;Délai mise en ligne - 150 ans- Secret médical;Secret médical
+;;Délai mise en ligne - 150 ans- Données sensibles (loi CNIL);Données sensibles (loi CNIL)
--- a/test/test_dataimport.py	Thu Mar 02 20:12:17 2017 +0100
+++ b/test/test_dataimport.py	Thu Mar 02 19:10:11 2017 +0100
@@ -25,7 +25,7 @@
     def test_import_seda_schemes(self):
         with self.admin_access.client_cnx() as cnx:
             dataimport.import_seda_schemes(cnx, lcsv_import=dataimport.lcsv_check)
-            self.assertEqual(len(cnx.find('ConceptScheme')), 17)
+            self.assertEqual(len(cnx.find('ConceptScheme')), 18)
 
 
 if __name__ == '__main__':
--- a/test/test_hooks.py	Thu Mar 02 20:12:17 2017 +0100
+++ b/test/test_hooks.py	Thu Mar 02 19:10:11 2017 +0100
@@ -138,7 +138,8 @@
                                           repeat(None)),
                                       [('seda_algorithm', 'SEDABinaryDataObject'),
                                        ('seda_rule', 'SEDASeqAppraisalRuleRule'),
-                                       ('seda_rule', 'SEDASeqAccessRuleRule')]):
+                                       ('seda_rule', 'SEDASeqAccessRuleRule'),
+                                       ('seda_rule', 'SEDASeqDisseminationRuleRule')]):
                 scheme_for_type(cnx, rtype, etype)
             cnx.commit()
             transfer = cnx.create_entity('SEDAArchiveTransfer', title=u'test profile')
@@ -150,6 +151,7 @@
             self.assertTrue(transfer.reverse_seda_encoding_code_list_version_from)
             self.assertTrue(transfer.reverse_seda_access_rule_code_list_version_from)
             self.assertTrue(transfer.reverse_seda_appraisal_rule_code_list_version_from)
+            self.assertTrue(transfer.reverse_seda_dissemination_rule_code_list_version_from)
 
     def test_default_card_on_typed_data_object_ref(self):
         """When creating a SEDADataObjectReference in the context of a reference, its cardinality