[Products.SilvaFind][Sylvain Viollon] Fix tests.

[email protected] Fri, 30 Aug 2013 15:55:21 +0200
Newsgroups gmane.comp.web.zope.silva.cvs
Message-ID <[email protected]>
author:    Sylvain Viollon
date:      Fri Aug 30 15:55:17 2013 +0200
revision:  544:567f1653e86a in Products.SilvaFind
branch:    1.4
details:   https://hg.infrae.com/Products.SilvaFind?cmd=changeset;node=567f1653e86a
modified:  Products/SilvaFind/tests/test_xml_export.py Products/SilvaFind/tests/test_xml_import.py
added:     
removed:   
log:       Fix tests.


diffstat:

 Products/SilvaFind/tests/test_xml_export.py |  55 +++++++++++++++-------------
 Products/SilvaFind/tests/test_xml_import.py |  27 ++++++++-----
 2 files changed, 46 insertions(+), 36 deletions(-)

diffs (154 lines):

diff -r 549bae08e8bc -r 567f1653e86a Products/SilvaFind/tests/test_xml_export.py
--- a/Products/SilvaFind/tests/test_xml_export.py	Tue Aug 27 18:18:03 2013 +0200
+++ b/Products/SilvaFind/tests/test_xml_export.py	Fri Aug 30 15:55:17 2013 +0200
@@ -7,6 +7,7 @@
 from zope.component import queryMultiAdapter
 from silva.core.references.reference import get_content_id
 
+from Products.Silva.testing import Transaction
 from Products.SilvaFind.testing import FunctionalLayer
 from Products.SilvaFind.interfaces import ICriterionData
 from Products.Silva.tests.test_xml_export import SilvaXMLTestCase
@@ -18,11 +19,12 @@
     layer = FunctionalLayer
 
     def setUp(self):
-        super(XMLExportTestCase, self).setUp()
-        factory = self.root.manage_addProduct['Silva']
-        factory.manage_addFolder('folder', 'Folder')
-        factory = self.root.folder.manage_addProduct['SilvaFind']
-        factory.manage_addSilvaFind('search', 'Search your Site')
+        with Transaction():
+            super(XMLExportTestCase, self).setUp()
+            factory = self.root.manage_addProduct['Silva']
+            factory.manage_addFolder('folder', 'Folder')
+            factory = self.root.folder.manage_addProduct['SilvaFind']
+            factory.manage_addSilvaFind('search', 'Search your Site')
 
     def test_default(self):
         """Export a default created Silva Find content.
@@ -37,14 +39,15 @@
         """Display all available fields and widgets in a default
         created Silva Find content and export it.
         """
-        search = self.root.folder.search
+        with Transaction():
+            search = self.root.folder.search
 
-        for field in search.getResultFields():
-            search.shownResultsFields[field.getName()] = True
+            for field in search.getResultFields():
+                search.shownResultsFields[field.getName()] = True
 
-        for field in search.getSearchFields():
-            if field.publicField:
-                search.shownFields[field.getName()] = True
+            for field in search.getSearchFields():
+                if field.publicField:
+                    search.shownFields[field.getName()] = True
 
         exporter = self.assertExportEqual(
             search,
@@ -56,16 +59,17 @@
         """Display some extra widgets with some default values (test a
         simple string, a path and a list).
         """
-        search = self.root.folder.search
-        search.shownFields['fulltext'] = True
-        search.shownFields['meta_type'] = True
-        fields = search.getSearchSchema()
-        data = queryMultiAdapter((fields['fulltext'], search), ICriterionData)
-        data.setValue('silva')
-        data = queryMultiAdapter((fields['path'], search), ICriterionData)
-        data.setValue(get_content_id(self.root.folder))
-        data = queryMultiAdapter((fields['meta_type'], search), ICriterionData)
-        data.setValue(['Silva Document', 'Silva Folder', 'Silva File'])
+        with Transaction():
+            search = self.root.folder.search
+            search.shownFields['fulltext'] = True
+            search.shownFields['meta_type'] = True
+            fields = search.getSearchSchema()
+            data = queryMultiAdapter((fields['fulltext'], search), ICriterionData)
+            data.setValue('silva')
+            data = queryMultiAdapter((fields['path'], search), ICriterionData)
+            data.setValue(get_content_id(self.root.folder))
+            data = queryMultiAdapter((fields['meta_type'], search), ICriterionData)
+            data.setValue(['Silva Document', 'Silva Folder', 'Silva File'])
 
         # We need to export the folder with it not do get an reference error.
         exporter = self.assertExportEqual(
@@ -78,10 +82,11 @@
         """Try to export a Silva Find content that have a path outside
         of the export tree.
         """
-        search = self.root.folder.search
-        fields = search.getSearchSchema()
-        data = queryMultiAdapter((fields['path'], search), ICriterionData)
-        data.setValue(get_content_id(self.root.folder))
+        with Transaction():
+            search = self.root.folder.search
+            fields = search.getSearchSchema()
+            data = queryMultiAdapter((fields['path'], search), ICriterionData)
+            data.setValue(get_content_id(self.root.folder))
 
         # We only export the find object, the folder selected as path
         # is not in the export so it fails with a nice exception
diff -r 549bae08e8bc -r 567f1653e86a Products/SilvaFind/tests/test_xml_import.py
--- a/Products/SilvaFind/tests/test_xml_import.py	Tue Aug 27 18:18:03 2013 +0200
+++ b/Products/SilvaFind/tests/test_xml_import.py	Fri Aug 30 15:55:17 2013 +0200
@@ -12,8 +12,8 @@
 from Products.SilvaFind.testing import FunctionalLayer
 from Products.SilvaFind.interfaces import IFind, ICriterionData
 from Products.Silva.tests.test_xml_import import SilvaXMLTestCase
+from Products.Silva.testing import Transaction
 
-from silva.core.interfaces.events import IContentImported
 from silva.core.interfaces import IFolder
 
 
@@ -25,9 +25,11 @@
     def test_default(self):
         """Import a default Silva Find object, With no special data in it.
         """
-        importer = self.assertImportFile(
-            'test_import_default.silvaxml',
-            ['/root/search'])
+        with Transaction():
+            importer = self.assertImportFile(
+                'test_import_default.silvaxml',
+                ['/root/search'])
+
         self.assertEqual(importer.getProblems(), [])
 
         search = self.root.search
@@ -57,9 +59,10 @@
         """Try to import a Silva Find object that all search and
         result fields display, but no default search values.
         """
-        importer = self.assertImportFile(
-            'test_import_shown_all.silvaxml',
-            ['/root/search'])
+        with Transaction():
+            importer = self.assertImportFile(
+                'test_import_shown_all.silvaxml',
+                ['/root/search'])
 
         search = self.root.search
         binding = self.metadata.getMetadata(search)
@@ -99,10 +102,12 @@
         """Import a Silva Find content that some search fields shown
         field default values.
         """
-        importer = self.assertImportFile(
-            'test_import_default_values.silvaxml',
-            ['/root/folder',
-             '/root/folder/search'])
+        with Transaction():
+            importer = self.assertImportFile(
+                'test_import_default_values.silvaxml',
+                ['/root/folder',
+                 '/root/folder/search'])
+
         self.assertEqual(importer.getProblems(), [])
 
         folder = self.root.folder