[prev in list] [next in list] [prev in thread] [next in thread] 

List:       zope-cvs
Subject:    [Zope-Checkins] CVS: Zope3/lib/python/Zope/App/Undo/tests - testUndo.py:1.1.2.3
From:       Gary Poster <garyposter () earthlink ! net>
Date:       2002-04-29 23:20:40
[Download RAW message or body]

Update of /cvs-repository/Zope3/lib/python/Zope/App/Undo/tests
In directory cvs.zope.org:/tmp/cvs-serv1556/App/Undo/tests

Modified Files:
      Tag: Zope-3x-branch
	testUndo.py 
Log Message:
ComponentArchitecture reorganization; addition of for_container; addition of \
IWriteContainer.isAddable.

good news: all tests pass; bad news: after the new security system, my changes have \
some problems.  I had to punt on the default contents view of all folders for \
instance--hasServiceManager is causing a problem for some reason I couldn't divine, \
even with Shane's Checker tool.  I commented out the offending code on the \
contents.pt just to keep things up.

I tagged before committing: gary_CA-reorganization

changes more in depth (as I understand it, all or most approved :-) ):

(in ComponentArchitecture:)
 * changing implementation names to Global* (i.e., AdapterService becomes 
GlobalAdapterService) and giving each its own file (many are clumped together 
in hooks.py)
 * removing hooks.py in ComponentArchitecture, putting all functions in appropriate \
                module above (i.e. getAdapter will be in the adapter module)
 * largely removing indirection (_hook) except for getService and 
getNextService
 * changing IServiceService.py to IServiceManager
 * changing Service.py to GlobalServiceManager.py (and class name too)
 * removing "provide*" functions (i.e., provideAdapter, provideUtility, etc.) 
and "defineService" from the __init__.py imports
 * change all global services to classes with appropriate methods as per 
interfaces
 * update all tests 
 * remove all of the "provide*" functions from the interfaces
 * renamed IComponentArchitecture to IPlacefulComponentArchitecture (hereafter IPCA), \
                after long discussion with SteveA 
 * list Resources as one of core CA services in IPlacefulComponentArchitecture
 * build actual IPCA interface, not just import of service interfaces (because we \
                want IPCA to be placeful, but the service interfaces do not need to \
                be)
 * place functions implementing ICA actually in __init__
 * explicitly setting up services in zcml
 * created Global service interfaces, and placed the "provides" and "set" and \
"define" functions there: however, to keep the main interfaces clean and clear, I \
placed these global interfaces in the same file as the global implementations, hoping \
to clarify that these are not reusable interfaces but descriptive, one-time \
                interfaces
 * built PlacefulSetup in Zope.ComponentArchitecture.tests for more specific CleanUp \
(a subclass).  PlacefulSetup is in the tests folder of the local ServiceManager.  \
AddableSetup also is available, in the AddableService tests.

(elsewhere in Zope3)
 * built for_container in addables
 * built isAddable for containers (after discussion with Jim, we decided an addable \
"contains" attribute in the zcml might not be the way to go.  I chose the isAddable \
                approach for a number of reasons)
 * addableservice does some more checks in getting the addable list, pertinent to the \
                above and to whether it can find the appropriate factories
 * a few more tests: a start of one in the local event service, and some more here \
and there

I'm sorry to add to the confusion of the big security changes, but I needed to either \
trash these changes or commit them: I'm a bit out of time for the moment.  If all \
else fails, again, I did tag the previous version.



=== Zope3/lib/python/Zope/App/Undo/tests/testUndo.py 1.1.2.2 => 1.1.2.3 ===
 
 from unittest import TestCase, TestSuite, main, makeSuite
-from Zope.Testing.CleanUp import CleanUp # Base class w registry cleanup
 
 from Zope.App.Undo.IUndoManager import IUndoManager
 from Zope.App.Undo.Undo import Undo
+from Zope.App.OFS.ServiceManager.tests.PlacefulSetup\
+           import PlacefulSetup
 
 class TestIUndoManager:
     __implements__ = IUndoManager
 
     def __init__(self):
-        dict1 = {'id': '1', 'user_name': 'monkey', 'description': 'thing1', 'time': \
                'today'}
-        dict2 = {'id': '2', 'user_name': 'monkey', 'description': 'thing2', 'time': \
                'today'}
-        dict3 = {'id': '3', 'user_name': 'monkey', 'description': 'thing3', 'time': \
'today'} +        dict1 = {'id': '1', 'user_name': 'monkey', 'description': 'thing1',
+ 'time': 'today'}
+        dict2 = {'id': '2', 'user_name': 'monkey', 'description': 'thing2',
+ 'time': 'today'}
+        dict3 = {'id': '3', 'user_name': 'monkey', 'description': 'thing3',
+ 'time': 'today'}
 
         self.dummy_db = [dict1, dict2, dict3]
 
@@ -46,14 +50,15 @@
         self.dummy_db = []
         for key in temp_dict.keys():
             self.dummy_db.append(temp_dict[key])
-                
 
-class Test(CleanUp, TestCase):
-    def setUp(self):
-        from Zope.ComponentArchitecture import provideUtility
 
-        provideUtility(IUndoManager, TestIUndoManager()) 
+class Test(PlacefulSetup, TestCase):
 
+    def setUp(self):
+        PlacefulSetup.setUp(self)
+        from Zope.ComponentArchitecture import getService
+        getService(None,'Utilities').provideUtility(IUndoManager,
+              TestIUndoManager())
         
     def testGetUndoInfo(self):
         view = Undo(None)



_______________________________________________
Zope-Checkins maillist  -  Zope-Checkins@zope.org
http://lists.zope.org/mailman/listinfo/zope-checkins


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic