-
-
Notifications
You must be signed in to change notification settings - Fork 75
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Branch: refs/heads/master Date: 2019-04-09T14:15:49+02:00 Author: Maurits van Rees (mauritsvanrees) <maurits@vanrees.org> Commit: plone/Products.CMFPlone@a43f0d9 Fixed unstable Markup Control Panel robot test again. The trick seems to be to first check the allowed type that we want to add, and then uncheck the other ones. Otherwise you get a slightly belated validation error before pressing Save, and the Save has no effect. (If this does not help, we really have to add a 'Sleep 1' before pressing Save.) Files changed: A news/2809.bugfix M Products/CMFPlone/tests/robot/test_controlpanel_markup.robot Repository: Products.CMFPlone Branch: refs/heads/master Date: 2019-04-09T16:12:50+02:00 Author: Jens W. Klein (jensens) <jk@kleinundpartner.at> Commit: plone/Products.CMFPlone@183982b Merge pull request #2826 from plone/maurits-issue-2809-unstable-robot-markup-2 Fixed unstable Markup Control Panel robot test again. Files changed: A news/2809.bugfix M Products/CMFPlone/tests/robot/test_controlpanel_markup.robot
- Loading branch information
Showing
1 changed file
with
22 additions
and
19 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,38 +1,41 @@ | ||
Repository: plone.app.referenceablebehavior | ||
Repository: Products.CMFPlone | ||
|
||
|
||
Branch: refs/heads/master | ||
Date: 2019-04-09T10:38:17+02:00 | ||
Author: Jens W. Klein (jensens) <jk@kleinundpartner.at> | ||
Commit: https://github.com/plone/plone.app.referenceablebehavior/commit/9e13ce5c18ac38d7260bac3b3e977b48c48b02b5 | ||
Date: 2019-04-09T14:15:49+02:00 | ||
Author: Maurits van Rees (mauritsvanrees) <maurits@vanrees.org> | ||
Commit: https://github.com/plone/Products.CMFPlone/commit/a43f0d9deead63c1e24c966bd0f1fa560f8058b0 | ||
|
||
Fixed unstable Markup Control Panel robot test again. | ||
|
||
Revert "Fix references missing from the reference catalog on move/rename" | ||
The trick seems to be to first check the allowed type that we want to add, | ||
and then uncheck the other ones. | ||
Otherwise you get a slightly belated validation error before pressing Save, | ||
and the Save has no effect. | ||
|
||
This reverts commit a45f487e0f94effb3992c18c9f416d5cb2cf7234. | ||
(If this does not help, we really have to add a 'Sleep 1' before pressing Save.) | ||
|
||
Files changed: | ||
M CHANGES.rst | ||
M plone/app/referenceablebehavior/tests/test_basics.py | ||
M plone/app/referenceablebehavior/uidcatalog.py | ||
A news/2809.bugfix | ||
M Products/CMFPlone/tests/robot/test_controlpanel_markup.robot | ||
|
||
b'diff --git a/CHANGES.rst b/CHANGES.rst\nindex 4856fce..ffa01c0 100644\n--- a/CHANGES.rst\n+++ b/CHANGES.rst\n@@ -14,9 +14,7 @@ New features:\n \n Bug fixes:\n \n-- Fix references missing from the reference catalog when an object is\n- moved/renamed.\n- [rpatterson]\n+- *add item here*\n \n \n 0.7.7 (2017-02-05)\ndiff --git a/plone/app/referenceablebehavior/tests/test_basics.py b/plone/app/referenceablebehavior/tests/test_basics.py\nindex 9cf83ba..ccf1263 100644\n--- a/plone/app/referenceablebehavior/tests/test_basics.py\n+++ b/plone/app/referenceablebehavior/tests/test_basics.py\n@@ -25,44 +25,35 @@ def test_rename_does_not_change_uuid(self):\n self.portal.manage_renameObject(id=\'doc1\', new_id=\'new_name\')\n self.assertEquals(old_doc_uuid, IUUID(self.portal[\'new_name\']))\n \n+ @unittest.skip(\'Needs Refactor. Linkintegrity does not use ref_catalog\')\n def test_rename_updates_ref_catalog(self):\n doc1 = self.portal[\'doc1\']\n doc2 = self.portal[\'doc2\']\n-\n- doc1_refs = IReferenceable(doc1)\n- doc2_refs = IReferenceable(doc2)\n- doc1_refs.addReference(doc2_refs, relationship=\'fooRelationship\')\n-\n ref_catalog = self.portal.reference_catalog\n+ doc1.text = RichTextValue(\'<a href="doc2">doc2</a>\')\n+ modified(doc1)\n self.assertEquals(1, len(ref_catalog()))\n- self.assertEquals([doc2], doc1_refs.getReferences())\n+\n+ self.assertEquals([doc2], IReferenceable(doc1).getReferences())\n ref_brain = ref_catalog()[0]\n self.assertTrue(ref_brain.getPath().startswith(\'doc1\'))\n-\n self.portal.manage_renameObject(id=\'doc1\', new_id=\'new_name\')\n- doc1 = self.portal[\'new_name\']\n- doc1_refs = IReferenceable(doc1)\n-\n+ modified(doc1)\n self.assertEquals(1, len(ref_catalog()))\n ref_brain = ref_catalog()[0]\n self.assertTrue(ref_brain.getPath().startswith(\'new_name\'))\n- self.assertEquals([doc2], doc1_refs.getReferences())\n+ self.assertEquals([doc2], IReferenceable(doc1).getReferences())\n \n+ @unittest.skip(\'Needs Refactor. Linkintegrity does not use ref_catalog\')\n def test_remove_cleans_ref_catalog(self):\n doc1 = self.portal[\'doc1\']\n- doc2 = self.portal[\'doc2\']\n-\n- doc1_refs = IReferenceable(doc1)\n- doc2_refs = IReferenceable(doc2)\n- doc1_refs.addReference(doc2_refs, relationship=\'fooRelationship\')\n-\n+ doc1.text = RichTextValue(\'<a href="doc1">doc1</a>\')\n+ modified(doc1)\n ref_catalog = self.portal.reference_catalog\n self.assertEquals(1, len(ref_catalog()))\n- self.assertEquals([doc1], doc2_refs.getBackReferences())\n \n self.portal.manage_delObjects([\'doc1\'])\n self.assertEquals(0, len(ref_catalog()))\n- self.assertEquals([], doc2_refs.getBackReferences())\n \n def test_referenceable_api(self):\n doc1 = self.portal[\'doc1\']\ndiff --git a/plone/app/referenceablebehavior/uidcatalog.py b/plone/app/referenceablebehavior/uidcatalog.py\nindex 2daabe9..2580fac 100644\n--- a/plone/app/referenceablebehavior/uidcatalog.py\n+++ b/plone/app/referenceablebehavior/uidcatalog.py\n@@ -77,17 +77,15 @@ def moved_handler(obj, event):\n return\n \n for ref in annotations.objectValues():\n- new_url = getRelURL(ref_catalog, ref.getPhysicalPath())\n+ url = getRelURL(ref_catalog, ref.getPhysicalPath())\n if event.oldName and event.newName:\n- old_url = event.oldName + new_url[len(event.newName):]\n- uid_catalog_rid = uid_catalog.getrid(old_url)\n- ref_catalog_rid = ref_catalog.getrid(old_url)\n+ url = event.oldName + url[len(event.newName):]\n+ uid_catalog_rid = uid_catalog.getrid(url)\n+ ref_catalog_rid = ref_catalog.getrid(url)\n if uid_catalog_rid is not None:\n- uid_catalog.uncatalog_object(old_url)\n- uid_catalog.catalog_object(ref, new_url)\n+ uid_catalog.uncatalog_object(url)\n if ref_catalog_rid is not None:\n- ref_catalog.uncatalog_object(old_url)\n- ref_catalog.catalog_object(ref, new_url)\n+ ref_catalog.uncatalog_object(url)\n \n \n def removed_handler(obj, event):\n' | ||
b'diff --git a/Products/CMFPlone/tests/robot/test_controlpanel_markup.robot b/Products/CMFPlone/tests/robot/test_controlpanel_markup.robot\nindex b455c5cf4..1df997158 100644\n--- a/Products/CMFPlone/tests/robot/test_controlpanel_markup.robot\n+++ b/Products/CMFPlone/tests/robot/test_controlpanel_markup.robot\n@@ -46,12 +46,11 @@ the markup control panel\n # --- WHEN -------------------------------------------------------------------\n \n I set allowed types to "${type}"\n- [Documentation] \'Wait until page contains Changes saved\' is nicer, but is unstable. See https://github.com/plone/Products.CMFPlone/issues/2809\n+ with the label ${type} Select Checkbox\n with the label text/html UnSelect Checkbox\n with the label text/x-web-textile UnSelect Checkbox\n- with the label ${type} Select Checkbox\n Click Button Save\n- Go to ${PLONE_URL}/@@markup-controlpanel\n+ Wait until page contains Changes saved\n Checkbox Should Be Selected ${type}\n Checkbox Should Not Be Selected text/html\n Checkbox Should Not Be Selected text/x-web-textile\ndiff --git a/news/2809.bugfix b/news/2809.bugfix\nnew file mode 100644\nindex 000000000..9e3c9b8e1\n--- /dev/null\n+++ b/news/2809.bugfix\n@@ -0,0 +1 @@\n+Fixed unstable Markup Control Panel robot test again. [maurits]\n' | ||
|
||
Repository: plone.app.referenceablebehavior | ||
Repository: Products.CMFPlone | ||
|
||
|
||
Branch: refs/heads/master | ||
Date: 2019-04-09T10:40:01+02:00 | ||
Date: 2019-04-09T16:12:50+02:00 | ||
Author: Jens W. Klein (jensens) <jk@kleinundpartner.at> | ||
Commit: https://github.com/plone/plone.app.referenceablebehavior/commit/53bbe2b5170ed7f018b6e2d60bb47d89fa050b29 | ||
Commit: https://github.com/plone/Products.CMFPlone/commit/183982b1dec33f56c4e6f5e5fe182efa6f780c91 | ||
|
||
Merge pull request #12 from plone/revert-breaking-commit-by-rpatterson | ||
Merge pull request #2826 from plone/maurits-issue-2809-unstable-robot-markup-2 | ||
|
||
Revert "Fix references missing from the reference catalog on move/ren… | ||
Fixed unstable Markup Control Panel robot test again. | ||
|
||
Files changed: | ||
M CHANGES.rst | ||
M plone/app/referenceablebehavior/tests/test_basics.py | ||
M plone/app/referenceablebehavior/uidcatalog.py | ||
A news/2809.bugfix | ||
M Products/CMFPlone/tests/robot/test_controlpanel_markup.robot | ||
|
||
b'diff --git a/CHANGES.rst b/CHANGES.rst\nindex 4856fce..ffa01c0 100644\n--- a/CHANGES.rst\n+++ b/CHANGES.rst\n@@ -14,9 +14,7 @@ New features:\n \n Bug fixes:\n \n-- Fix references missing from the reference catalog when an object is\n- moved/renamed.\n- [rpatterson]\n+- *add item here*\n \n \n 0.7.7 (2017-02-05)\ndiff --git a/plone/app/referenceablebehavior/tests/test_basics.py b/plone/app/referenceablebehavior/tests/test_basics.py\nindex 9cf83ba..ccf1263 100644\n--- a/plone/app/referenceablebehavior/tests/test_basics.py\n+++ b/plone/app/referenceablebehavior/tests/test_basics.py\n@@ -25,44 +25,35 @@ def test_rename_does_not_change_uuid(self):\n self.portal.manage_renameObject(id=\'doc1\', new_id=\'new_name\')\n self.assertEquals(old_doc_uuid, IUUID(self.portal[\'new_name\']))\n \n+ @unittest.skip(\'Needs Refactor. Linkintegrity does not use ref_catalog\')\n def test_rename_updates_ref_catalog(self):\n doc1 = self.portal[\'doc1\']\n doc2 = self.portal[\'doc2\']\n-\n- doc1_refs = IReferenceable(doc1)\n- doc2_refs = IReferenceable(doc2)\n- doc1_refs.addReference(doc2_refs, relationship=\'fooRelationship\')\n-\n ref_catalog = self.portal.reference_catalog\n+ doc1.text = RichTextValue(\'<a href="doc2">doc2</a>\')\n+ modified(doc1)\n self.assertEquals(1, len(ref_catalog()))\n- self.assertEquals([doc2], doc1_refs.getReferences())\n+\n+ self.assertEquals([doc2], IReferenceable(doc1).getReferences())\n ref_brain = ref_catalog()[0]\n self.assertTrue(ref_brain.getPath().startswith(\'doc1\'))\n-\n self.portal.manage_renameObject(id=\'doc1\', new_id=\'new_name\')\n- doc1 = self.portal[\'new_name\']\n- doc1_refs = IReferenceable(doc1)\n-\n+ modified(doc1)\n self.assertEquals(1, len(ref_catalog()))\n ref_brain = ref_catalog()[0]\n self.assertTrue(ref_brain.getPath().startswith(\'new_name\'))\n- self.assertEquals([doc2], doc1_refs.getReferences())\n+ self.assertEquals([doc2], IReferenceable(doc1).getReferences())\n \n+ @unittest.skip(\'Needs Refactor. Linkintegrity does not use ref_catalog\')\n def test_remove_cleans_ref_catalog(self):\n doc1 = self.portal[\'doc1\']\n- doc2 = self.portal[\'doc2\']\n-\n- doc1_refs = IReferenceable(doc1)\n- doc2_refs = IReferenceable(doc2)\n- doc1_refs.addReference(doc2_refs, relationship=\'fooRelationship\')\n-\n+ doc1.text = RichTextValue(\'<a href="doc1">doc1</a>\')\n+ modified(doc1)\n ref_catalog = self.portal.reference_catalog\n self.assertEquals(1, len(ref_catalog()))\n- self.assertEquals([doc1], doc2_refs.getBackReferences())\n \n self.portal.manage_delObjects([\'doc1\'])\n self.assertEquals(0, len(ref_catalog()))\n- self.assertEquals([], doc2_refs.getBackReferences())\n \n def test_referenceable_api(self):\n doc1 = self.portal[\'doc1\']\ndiff --git a/plone/app/referenceablebehavior/uidcatalog.py b/plone/app/referenceablebehavior/uidcatalog.py\nindex 2daabe9..2580fac 100644\n--- a/plone/app/referenceablebehavior/uidcatalog.py\n+++ b/plone/app/referenceablebehavior/uidcatalog.py\n@@ -77,17 +77,15 @@ def moved_handler(obj, event):\n return\n \n for ref in annotations.objectValues():\n- new_url = getRelURL(ref_catalog, ref.getPhysicalPath())\n+ url = getRelURL(ref_catalog, ref.getPhysicalPath())\n if event.oldName and event.newName:\n- old_url = event.oldName + new_url[len(event.newName):]\n- uid_catalog_rid = uid_catalog.getrid(old_url)\n- ref_catalog_rid = ref_catalog.getrid(old_url)\n+ url = event.oldName + url[len(event.newName):]\n+ uid_catalog_rid = uid_catalog.getrid(url)\n+ ref_catalog_rid = ref_catalog.getrid(url)\n if uid_catalog_rid is not None:\n- uid_catalog.uncatalog_object(old_url)\n- uid_catalog.catalog_object(ref, new_url)\n+ uid_catalog.uncatalog_object(url)\n if ref_catalog_rid is not None:\n- ref_catalog.uncatalog_object(old_url)\n- ref_catalog.catalog_object(ref, new_url)\n+ ref_catalog.uncatalog_object(url)\n \n \n def removed_handler(obj, event):\n' | ||
b'diff --git a/Products/CMFPlone/tests/robot/test_controlpanel_markup.robot b/Products/CMFPlone/tests/robot/test_controlpanel_markup.robot\nindex b455c5cf4..1df997158 100644\n--- a/Products/CMFPlone/tests/robot/test_controlpanel_markup.robot\n+++ b/Products/CMFPlone/tests/robot/test_controlpanel_markup.robot\n@@ -46,12 +46,11 @@ the markup control panel\n # --- WHEN -------------------------------------------------------------------\n \n I set allowed types to "${type}"\n- [Documentation] \'Wait until page contains Changes saved\' is nicer, but is unstable. See https://github.com/plone/Products.CMFPlone/issues/2809\n+ with the label ${type} Select Checkbox\n with the label text/html UnSelect Checkbox\n with the label text/x-web-textile UnSelect Checkbox\n- with the label ${type} Select Checkbox\n Click Button Save\n- Go to ${PLONE_URL}/@@markup-controlpanel\n+ Wait until page contains Changes saved\n Checkbox Should Be Selected ${type}\n Checkbox Should Not Be Selected text/html\n Checkbox Should Not Be Selected text/x-web-textile\ndiff --git a/news/2809.bugfix b/news/2809.bugfix\nnew file mode 100644\nindex 000000000..9e3c9b8e1\n--- /dev/null\n+++ b/news/2809.bugfix\n@@ -0,0 +1 @@\n+Fixed unstable Markup Control Panel robot test again. [maurits]\n' | ||
|