From 46aa19af748e72c300da5d813c01ee9ed3832106 Mon Sep 17 00:00:00 2001 From: Martina Bustacchini Date: Thu, 3 Sep 2020 10:01:38 +0200 Subject: [PATCH 01/13] [dev] modified initial structure creation --- src/design/plone/policy/setuphandlers.py | 1 + .../policy/tests/test_initial_structure.py | 136 ++++++++++-------- src/design/plone/policy/utils.py | 20 ++- 3 files changed, 89 insertions(+), 68 deletions(-) diff --git a/src/design/plone/policy/setuphandlers.py b/src/design/plone/policy/setuphandlers.py index b84c76e..02b95ad 100644 --- a/src/design/plone/policy/setuphandlers.py +++ b/src/design/plone/policy/setuphandlers.py @@ -17,6 +17,7 @@ def post_install(context): folderSubstructureGenerator("Servizi") folderSubstructureGenerator("Novità") folderSubstructureGenerator("Documenti e dati") + folderSubstructureGenerator("Argomenti") def uninstall(context): diff --git a/src/design/plone/policy/tests/test_initial_structure.py b/src/design/plone/policy/tests/test_initial_structure.py index 4b51979..99ed818 100644 --- a/src/design/plone/policy/tests/test_initial_structure.py +++ b/src/design/plone/policy/tests/test_initial_structure.py @@ -19,158 +19,170 @@ def setUp(self): def test_first_level_created(self): self.assertEqual( [x.id for x in self.portal.getFolderContents()], - ['amministrazione', 'servizi', 'novita', 'documenti-e-dati'], + [ + "amministrazione", + "servizi", + "novita", + "documenti-e-dati", + "argomenti", + ], ) def test_amministrazione_section(self): - amministrazione = self.portal['amministrazione'] + amministrazione = self.portal["amministrazione"] self.assertEqual(amministrazione.constrain_types_mode, 1) self.assertEqual(amministrazione.locally_allowed_types, ("Document",)) self.assertEqual( amministrazione.keys(), [ - 'politici', - 'personale-amministrativo', - 'organi-di-governo', - 'aree-amministrative', - 'uffici', - 'enti-e-fondazioni', - 'luoghi', + "politici", + "personale-amministrativo", + "organi-di-governo", + "aree-amministrative", + "uffici", + "enti-e-fondazioni", + "luoghi", ], ) - self.assertEqual(amministrazione['politici'].portal_type, 'Document') - self.assertEqual(amministrazione['politici'].constrain_types_mode, 1) + self.assertEqual(amministrazione["politici"].portal_type, "Document") + self.assertEqual(amministrazione["politici"].constrain_types_mode, 1) self.assertEqual( - amministrazione['politici'].locally_allowed_types, ("Document",) + amministrazione["politici"].locally_allowed_types, ("Document",) ) self.assertEqual( - amministrazione['personale-amministrativo'].portal_type, 'Document' + amministrazione["personale-amministrativo"].portal_type, "Document" ) self.assertEqual( - amministrazione['personale-amministrativo'].constrain_types_mode, 1 + amministrazione["personale-amministrativo"].constrain_types_mode, 1 ) self.assertEqual( - amministrazione['personale-amministrativo'].locally_allowed_types, + amministrazione["personale-amministrativo"].locally_allowed_types, ("Persona",), ) self.assertEqual( - amministrazione['organi-di-governo'].portal_type, 'Document' + amministrazione["organi-di-governo"].portal_type, "Document" ) self.assertEqual( - amministrazione['organi-di-governo'].constrain_types_mode, 1 + amministrazione["organi-di-governo"].constrain_types_mode, 1 ) self.assertEqual( - amministrazione['organi-di-governo'].locally_allowed_types, + amministrazione["organi-di-governo"].locally_allowed_types, ("UnitaOrganizzativa",), ) self.assertEqual( - amministrazione['aree-amministrative'].portal_type, 'Document' + amministrazione["aree-amministrative"].portal_type, "Document" ) self.assertEqual( - amministrazione['aree-amministrative'].constrain_types_mode, 1 + amministrazione["aree-amministrative"].constrain_types_mode, 1 ) self.assertEqual( - amministrazione['aree-amministrative'].locally_allowed_types, + amministrazione["aree-amministrative"].locally_allowed_types, ("UnitaOrganizzativa",), ) - self.assertEqual(amministrazione['uffici'].portal_type, 'Document') - self.assertEqual(amministrazione['uffici'].constrain_types_mode, 1) + self.assertEqual(amministrazione["uffici"].portal_type, "Document") + self.assertEqual(amministrazione["uffici"].constrain_types_mode, 1) self.assertEqual( - amministrazione['uffici'].locally_allowed_types, + amministrazione["uffici"].locally_allowed_types, ("UnitaOrganizzativa",), ) self.assertEqual( - amministrazione['enti-e-fondazioni'].portal_type, 'Document' + amministrazione["enti-e-fondazioni"].portal_type, "Document" ) self.assertEqual( - amministrazione['enti-e-fondazioni'].constrain_types_mode, 1 + amministrazione["enti-e-fondazioni"].constrain_types_mode, 1 ) self.assertEqual( - amministrazione['enti-e-fondazioni'].locally_allowed_types, + amministrazione["enti-e-fondazioni"].locally_allowed_types, ("UnitaOrganizzativa",), ) - self.assertEqual(amministrazione['luoghi'].portal_type, 'Document') - self.assertEqual(amministrazione['luoghi'].constrain_types_mode, 1) + self.assertEqual(amministrazione["luoghi"].portal_type, "Document") + self.assertEqual(amministrazione["luoghi"].constrain_types_mode, 1) self.assertEqual( - amministrazione['luoghi'].locally_allowed_types, ("Venue",) + amministrazione["luoghi"].locally_allowed_types, ("Venue",) ) def test_servizi_section(self): - servizi = self.portal['servizi'] + servizi = self.portal["servizi"] self.assertEqual(servizi.constrain_types_mode, 1) self.assertEqual(servizi.locally_allowed_types, ("Document",)) self.assertEqual( servizi.keys(), [ - 'anagrafe-e-stato-civile', - 'cultura-e-tempo-libero', - 'vita-lavorativa', - 'attivita-produttive-e-commercio', - 'appalti-pubblici', - 'catasto-e-urbanistica', - 'turismo', - 'mobilita-e-trasporti', - 'educazione-e-formazione', - 'giustizia-e-sicurezza-pubblica', - 'tributi-e-finanze', - 'ambiente', - 'salute-benessere-e-assistenza', - 'autorizzazioni', - 'agricoltura', + "anagrafe-e-stato-civile", + "cultura-e-tempo-libero", + "vita-lavorativa", + "attivita-produttive-e-commercio", + "appalti-pubblici", + "catasto-e-urbanistica", + "turismo", + "mobilita-e-trasporti", + "educazione-e-formazione", + "giustizia-e-sicurezza-pubblica", + "tributi-e-finanze", + "ambiente", + "salute-benessere-e-assistenza", + "autorizzazioni", + "agricoltura", ], ) for child in servizi.listFolderContents(): - self.assertEqual(child.portal_type, 'Document') + self.assertEqual(child.portal_type, "Document") self.assertEqual(child.constrain_types_mode, 1) self.assertEqual(child.locally_allowed_types, ("Document",)) def test_novita_section(self): - folder = self.portal['novita'] + folder = self.portal["novita"] self.assertEqual(folder.constrain_types_mode, 1) self.assertEqual(folder.locally_allowed_types, ("Document",)) - self.assertEqual(folder.keys(), ['notizie', 'comunicati', 'eventi']) + self.assertEqual(folder.keys(), ["notizie", "comunicati", "eventi"]) for child in folder.listFolderContents(): - self.assertEqual(child.portal_type, 'Document') + self.assertEqual(child.portal_type, "Document") self.assertEqual(child.constrain_types_mode, 1) - if child.getId() == 'eventi': + if child.getId() == "eventi": self.assertEqual(child.locally_allowed_types, ("Document",)) else: self.assertEqual(child.locally_allowed_types, ("News Item",)) def test_documenti_e_dati_section(self): - folder = self.portal['documenti-e-dati'] + folder = self.portal["documenti-e-dati"] self.assertEqual(folder.constrain_types_mode, 1) self.assertEqual(folder.locally_allowed_types, ("Document",)) self.assertEqual( folder.keys(), [ - 'documenti-albo-pretorio', - 'modulistica', - 'documenti-funzionamento-interno', - 'atti-normativi', - 'accordi-tra-enti', - 'documenti-attivita-politica', - 'documenti-tecnici-di-supporto', - 'istanze', - 'dataset', + "documenti-albo-pretorio", + "modulistica", + "documenti-funzionamento-interno", + "atti-normativi", + "accordi-tra-enti", + "documenti-attivita-politica", + "documenti-tecnici-di-supporto", + "istanze", + "dataset", ], ) for child in folder.listFolderContents(): - self.assertEqual(child.portal_type, 'Document') + self.assertEqual(child.portal_type, "Document") self.assertEqual(child.constrain_types_mode, 1) self.assertEqual(child.locally_allowed_types, ("Document",)) + + def test_argomenti_section(self): + folder = self.portal["argomenti"] + self.assertEqual(folder.portal_type, "Document") + self.assertEqual(folder.constrain_types_mode, 1) + self.assertEqual(folder.locally_allowed_types, ("PaginaArgomento",)) diff --git a/src/design/plone/policy/utils.py b/src/design/plone/policy/utils.py index 5b18a1a..0f9102a 100644 --- a/src/design/plone/policy/utils.py +++ b/src/design/plone/policy/utils.py @@ -88,14 +88,14 @@ def folderSubstructureGenerator(title): container=tree_root, ) restrict_types( - context=tree_root['personale-amministrativo'], types=("Persona",) + context=tree_root["personale-amministrativo"], types=("Persona",) ) api.content.create( type="Document", title="Organi di governo", container=tree_root ) restrict_types( - context=tree_root['organi-di-governo'], + context=tree_root["organi-di-governo"], types=("UnitaOrganizzativa",), ) @@ -103,7 +103,7 @@ def folderSubstructureGenerator(title): type="Document", title="Aree amministrative", container=tree_root ) restrict_types( - context=tree_root['aree-amministrative'], + context=tree_root["aree-amministrative"], types=("UnitaOrganizzativa",), ) @@ -111,21 +111,29 @@ def folderSubstructureGenerator(title): type="Document", title="Uffici", container=tree_root ) restrict_types( - context=tree_root['uffici'], types=("UnitaOrganizzativa",) + context=tree_root["uffici"], types=("UnitaOrganizzativa",) ) api.content.create( type="Document", title="Enti e fondazioni", container=tree_root ) restrict_types( - context=tree_root['enti-e-fondazioni'], + context=tree_root["enti-e-fondazioni"], types=("UnitaOrganizzativa",), ) api.content.create( type="Document", title="Luoghi", container=tree_root ) - restrict_types(context=tree_root['luoghi'], types=("Venue",)) + restrict_types(context=tree_root["luoghi"], types=("Venue",)) + + elif title == "Argomenti": + api.content.create( + type="Document", title="Argomenti", container=tree_root + ) + restrict_types( + context=tree_root["argomenti"], types=("PaginaArgomento") + ) def restrict_types(context, types): From 443c2c204fe71238bcc29bbf5ac7964e5c95fc57 Mon Sep 17 00:00:00 2001 From: Martina Bustacchini Date: Thu, 3 Sep 2020 10:38:24 +0200 Subject: [PATCH 02/13] [dev] fixed buildout issue and tests --- base.cfg | 1 + src/design/plone/policy/tests/test_initial_structure.py | 2 +- src/design/plone/policy/utils.py | 7 +------ 3 files changed, 3 insertions(+), 7 deletions(-) diff --git a/base.cfg b/base.cfg index b9ccea1..9304033 100644 --- a/base.cfg +++ b/base.cfg @@ -119,6 +119,7 @@ scripts = [versions] # Don't use a released version of design.plone.policy +plone.schema = 1.2.1 design.plone.policy = [sources] diff --git a/src/design/plone/policy/tests/test_initial_structure.py b/src/design/plone/policy/tests/test_initial_structure.py index 99ed818..83b4c8e 100644 --- a/src/design/plone/policy/tests/test_initial_structure.py +++ b/src/design/plone/policy/tests/test_initial_structure.py @@ -185,4 +185,4 @@ def test_argomenti_section(self): folder = self.portal["argomenti"] self.assertEqual(folder.portal_type, "Document") self.assertEqual(folder.constrain_types_mode, 1) - self.assertEqual(folder.locally_allowed_types, ("PaginaArgomento",)) + self.assertEqual(folder.locally_allowed_types, ("Pagina Argomento",)) diff --git a/src/design/plone/policy/utils.py b/src/design/plone/policy/utils.py index 0f9102a..4f07bb1 100644 --- a/src/design/plone/policy/utils.py +++ b/src/design/plone/policy/utils.py @@ -128,12 +128,7 @@ def folderSubstructureGenerator(title): restrict_types(context=tree_root["luoghi"], types=("Venue",)) elif title == "Argomenti": - api.content.create( - type="Document", title="Argomenti", container=tree_root - ) - restrict_types( - context=tree_root["argomenti"], types=("PaginaArgomento") - ) + restrict_types(context=tree_root, types=("Pagina Argomento",)) def restrict_types(context, types): From fae18b00825fc82100e67e69b7b6570c93596afb Mon Sep 17 00:00:00 2001 From: Luca Bellenghi Date: Wed, 9 Sep 2020 10:33:44 +0200 Subject: [PATCH 03/13] fix setuptools version --- test_plone52.cfg | 2 ++ 1 file changed, 2 insertions(+) diff --git a/test_plone52.cfg b/test_plone52.cfg index 2f64151..27ade07 100644 --- a/test_plone52.cfg +++ b/test_plone52.cfg @@ -129,3 +129,5 @@ geopy = 1.19.0 # Required by: # design.plone.contenttypes==1.0a1 collective.dexteritytextindexer = 2.4.0 + +setuptools = 46.0.0 From 52e84ecfa53fb2054bf4c382bd412a8c6eac88f3 Mon Sep 17 00:00:00 2001 From: Luca Date: Wed, 9 Sep 2020 10:36:41 +0200 Subject: [PATCH 04/13] Update test_plone52.cfg try to fix tests --- test_plone52.cfg | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test_plone52.cfg b/test_plone52.cfg index 27ade07..dc598d6 100644 --- a/test_plone52.cfg +++ b/test_plone52.cfg @@ -130,4 +130,4 @@ geopy = 1.19.0 # design.plone.contenttypes==1.0a1 collective.dexteritytextindexer = 2.4.0 -setuptools = 46.0.0 +setuptools = 45.3.0 From cb0701c39cfd6d047701c8518cf06b8394be008f Mon Sep 17 00:00:00 2001 From: Luca Date: Wed, 9 Sep 2020 10:38:55 +0200 Subject: [PATCH 05/13] Update test_plone52.cfg --- test_plone52.cfg | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test_plone52.cfg b/test_plone52.cfg index dc598d6..27ade07 100644 --- a/test_plone52.cfg +++ b/test_plone52.cfg @@ -130,4 +130,4 @@ geopy = 1.19.0 # design.plone.contenttypes==1.0a1 collective.dexteritytextindexer = 2.4.0 -setuptools = 45.3.0 +setuptools = 46.0.0 From de3496c2bc6bae7e03fda537950e72854575d430 Mon Sep 17 00:00:00 2001 From: Luca Date: Wed, 9 Sep 2020 10:43:26 +0200 Subject: [PATCH 06/13] Update test_plone52.cfg --- test_plone52.cfg | 1 + 1 file changed, 1 insertion(+) diff --git a/test_plone52.cfg b/test_plone52.cfg index 27ade07..66445cf 100644 --- a/test_plone52.cfg +++ b/test_plone52.cfg @@ -131,3 +131,4 @@ geopy = 1.19.0 collective.dexteritytextindexer = 2.4.0 setuptools = 46.0.0 +zope.security = 5.0.0 From 94f10333bf29627198eaef47f79063a34fa74980 Mon Sep 17 00:00:00 2001 From: Luca Date: Wed, 9 Sep 2020 10:45:32 +0200 Subject: [PATCH 07/13] Update test_plone52.cfg --- test_plone52.cfg | 1 + 1 file changed, 1 insertion(+) diff --git a/test_plone52.cfg b/test_plone52.cfg index 66445cf..9300394 100644 --- a/test_plone52.cfg +++ b/test_plone52.cfg @@ -132,3 +132,4 @@ collective.dexteritytextindexer = 2.4.0 setuptools = 46.0.0 zope.security = 5.0.0 +zope.proxy = 4.3.3 From 79912b3e27b0cb57c8fb2d2a59174fc2b8d8e668 Mon Sep 17 00:00:00 2001 From: Luca Date: Wed, 9 Sep 2020 10:48:48 +0200 Subject: [PATCH 08/13] Update test_plone52.cfg --- test_plone52.cfg | 1 + 1 file changed, 1 insertion(+) diff --git a/test_plone52.cfg b/test_plone52.cfg index 9300394..c552471 100644 --- a/test_plone52.cfg +++ b/test_plone52.cfg @@ -133,3 +133,4 @@ collective.dexteritytextindexer = 2.4.0 setuptools = 46.0.0 zope.security = 5.0.0 zope.proxy = 4.3.3 +zope.messageid = 5.0.0 From a9c478e5b5d36b0677702958dd2633f9c8809317 Mon Sep 17 00:00:00 2001 From: Luca Date: Wed, 9 Sep 2020 10:52:44 +0200 Subject: [PATCH 09/13] Update test_plone52.cfg --- test_plone52.cfg | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test_plone52.cfg b/test_plone52.cfg index c552471..0ac265a 100644 --- a/test_plone52.cfg +++ b/test_plone52.cfg @@ -133,4 +133,4 @@ collective.dexteritytextindexer = 2.4.0 setuptools = 46.0.0 zope.security = 5.0.0 zope.proxy = 4.3.3 -zope.messageid = 5.0.0 +zope.i18nmessageid = 5.0.0 From 41d1a87b27af15de08130e25c4e2b44baaaab6a5 Mon Sep 17 00:00:00 2001 From: Luca Date: Wed, 9 Sep 2020 10:56:12 +0200 Subject: [PATCH 10/13] Update test_plone52.cfg --- test_plone52.cfg | 2 ++ 1 file changed, 2 insertions(+) diff --git a/test_plone52.cfg b/test_plone52.cfg index 0ac265a..153a7e6 100644 --- a/test_plone52.cfg +++ b/test_plone52.cfg @@ -134,3 +134,5 @@ setuptools = 46.0.0 zope.security = 5.0.0 zope.proxy = 4.3.3 zope.i18nmessageid = 5.0.0 +zope.hookable = 5.0.0 + From 3b9a9007ce544167f6ac70afa34c7240510418f8 Mon Sep 17 00:00:00 2001 From: Luca Bellenghi Date: Wed, 9 Sep 2020 11:03:24 +0200 Subject: [PATCH 11/13] update test.yml --- .github/workflows/test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 37a5c1b..b610248 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -19,7 +19,7 @@ jobs: uses: actions/cache@v1 with: path: eggs - key: ${{ runner.OS }}-build-python${{ matrix.python }}-${{ matrix.plone }} + key: ${{ runner.OS }}-build-python${{ matrix.python }}-${{ matrix.plone }}-INVALIDATE - name: Set up Python ${{ matrix.python }} uses: actions/setup-python@v1 with: From a0dccf42e007be04dd0c03fe59a4f8122521a83b Mon Sep 17 00:00:00 2001 From: Luca Bellenghi Date: Wed, 9 Sep 2020 12:08:24 +0200 Subject: [PATCH 12/13] fix versions and requirements for ci build --- requirements.txt | 2 +- test_plone52.cfg | 7 ------- 2 files changed, 1 insertion(+), 8 deletions(-) diff --git a/requirements.txt b/requirements.txt index bcb25bb..6faa375 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,2 +1,2 @@ -setuptools +setuptools==42.0.2 zc.buildout diff --git a/test_plone52.cfg b/test_plone52.cfg index 153a7e6..2f64151 100644 --- a/test_plone52.cfg +++ b/test_plone52.cfg @@ -129,10 +129,3 @@ geopy = 1.19.0 # Required by: # design.plone.contenttypes==1.0a1 collective.dexteritytextindexer = 2.4.0 - -setuptools = 46.0.0 -zope.security = 5.0.0 -zope.proxy = 4.3.3 -zope.i18nmessageid = 5.0.0 -zope.hookable = 5.0.0 - From 3beb28df53cc11d687dfe0a45e99159dbd2902e8 Mon Sep 17 00:00:00 2001 From: Luca Bellenghi Date: Wed, 9 Sep 2020 12:14:58 +0200 Subject: [PATCH 13/13] fix test cache key --- .github/workflows/test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index b610248..37a5c1b 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -19,7 +19,7 @@ jobs: uses: actions/cache@v1 with: path: eggs - key: ${{ runner.OS }}-build-python${{ matrix.python }}-${{ matrix.plone }}-INVALIDATE + key: ${{ runner.OS }}-build-python${{ matrix.python }}-${{ matrix.plone }} - name: Set up Python ${{ matrix.python }} uses: actions/setup-python@v1 with: