[Zope-Checkins] CVS: Zope3/lib/python/Zope/I18n/Views/Browser/tests - testTranslate.py:1.3

Stephan Richter srichter@cbu.edu
Fri, 14 Jun 2002 12:50:51 -0400


Update of /cvs-repository/Zope3/lib/python/Zope/I18n/Views/Browser/tests
In directory cvs.zope.org:/tmp/cvs-serv18258/lib/python/Zope/I18n/Views/Browser/tests

Modified Files:
	testTranslate.py 
Log Message:
Finished Zope 3 Unicode support. Zope 3 should now be able to handle all 
unicode formats. Note that ebcoding and decoding unicode strings is based
on the parameters we get from the browser in HTTP_ACCEPT_CHARSET.

All "text strings" (strings that represent human language text) internally 
in Zope 3 should be unicode strings from now on! I have not checked all of 
Zope 3, so if you see a non-unicode text string somewhere, please convert
it simply by putting 'u' before the string literal.

Note that binary data, such as images are not to be encoded. 

The encoding happens on the HTTPRequest/HTTPResponse abstraction level. 
That means that currenty FTP does not profit from this new code; however
FTP is always data anyhow.


=== Zope3/lib/python/Zope/I18n/Views/Browser/tests/testTranslate.py 1.2 => 1.3 ===
 
 import unittest
-from cStringIO import StringIO
+from StringIO import StringIO
+
+from Zope.ComponentArchitecture.tests.PlacelessSetup import PlacelessSetup 
+from Zope.ComponentArchitecture.GlobalAdapterService import provideAdapter 
+from Zope.ComponentArchitecture.GlobalFactoryService import provideFactory
 
 from Zope.I18n.Views.Browser.Translate import Translate
 from Zope.I18n.TranslationService import TranslationService
 from Zope.I18n.MessageCatalog import MessageCatalog
+from Zope.I18n.IUserPreferredCharsets import IUserPreferredCharsets
 
+from Zope.Publisher.HTTP.HTTPRequest import IHTTPRequest
+from Zope.Publisher.HTTP.HTTPCharsets import HTTPCharsets
 from Zope.Publisher.Browser.BrowserRequest import BrowserRequest
 
 
-# Setup the registries
-from Zope.ComponentArchitecture.IFactoryService import IFactoryService
-from Zope.ComponentArchitecture.GlobalFactoryService import \
-     factoryService
-from Zope.App.ComponentArchitecture.metaConfigure import \
-     provideService, managerHandler
-from Zope.App.ComponentArchitecture.metaConfigure import handler
-
-    
-class TranslateTest(unittest.TestCase):
+class TranslateTest(unittest.TestCase, PlacelessSetup):
 
     def setUp(self):
+        PlacelessSetup.setUp(self)
 
-        try:
-            # Setup the registries
-            managerHandler('defineService', 'Factories', IFactoryService) 
-            provideService('Factories', factoryService, 'Zope.Public')
-            
-            handler('Factories', 'provideFactory', 'Message Catalog',
-                    MessageCatalog)
-        except:
-            pass
+        # Setup the registries
+        provideAdapter(IHTTPRequest, IUserPreferredCharsets, HTTPCharsets)
+        provideFactory('Message Catalog', MessageCatalog)
         
         service = TranslationService('default') 
 
@@ -136,3 +129,4 @@
 
 if __name__=='__main__':
     unittest.main()
+