[CMF-checkins] SVN: CMF/trunk/CMFSetup/ - renamed test_cookiecrumbler.py to test_cookieauth.py

Yvo Schubbe y.2005- at wcm-solutions.de
Fri Sep 30 03:04:36 EDT 2005


Log message for revision 38699:
  - renamed test_cookiecrumbler.py to test_cookieauth.py
  - set svn eol-style and keywords

Changed:
  UU  CMF/trunk/CMFSetup/cookieauth.py
  UU  CMF/trunk/CMFSetup/mailhost.py
  A   CMF/trunk/CMFSetup/tests/test_cookieauth.py
  D   CMF/trunk/CMFSetup/tests/test_cookiecrumbler.py
  UU  CMF/trunk/CMFSetup/tests/test_mailhost.py
  UU  CMF/trunk/CMFSetup/xml/ccExport.xml
  UU  CMF/trunk/CMFSetup/xml/mhcExport.xml

-=-
Modified: CMF/trunk/CMFSetup/cookieauth.py
===================================================================
--- CMF/trunk/CMFSetup/cookieauth.py	2005-09-30 07:04:05 UTC (rev 38698)
+++ CMF/trunk/CMFSetup/cookieauth.py	2005-09-30 07:04:36 UTC (rev 38699)
@@ -1,143 +1,143 @@
-##############################################################################
-#
-# Copyright (c) 2004 Zope Corporation and Contributors. All Rights Reserved.
-#
-# This software is subject to the provisions of the Zope Public License,
-# Version 2.1 (ZPL).  A copy of the ZPL should accompany this distribution.
-# THIS SOFTWARE IS PROVIDED "AS IS" AND ANY AND ALL EXPRESS OR IMPLIED
-# WARRANTIES ARE DISCLAIMED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
-# WARRANTIES OF TITLE, MERCHANTABILITY, AGAINST INFRINGEMENT, AND FITNESS
-# FOR A PARTICULAR PURPOSE.
-#
-##############################################################################
-""" CMFSetup:  Mailhost import/export
-
-$Id: mailhost.py 36704 2004-12-14 20:56:58Z yuppie $
-"""
-
-from AccessControl import ClassSecurityInfo
-from AccessControl.Permission import Permission
-from Globals import InitializeClass
-from Products.PageTemplates.PageTemplateFile import PageTemplateFile
-
-from Products.CMFCore.utils import getToolByName
-
-from permissions import ManagePortal
-from utils import _xmldir
-from utils import ExportConfiguratorBase, ImportConfiguratorBase
-from utils import CONVERTER, DEFAULT, KEY
-
-
-#
-#   Configurator entry points
-#
-_FILENAME = 'cookieauth.xml'
-
-def importCookieCrumbler( context ):
-
-    """ Import cookiecrumbler settings from an XML file.
-    """
-    site = context.getSite()
-    encoding = context.getEncoding()
-
-    if context.shouldPurge():
-        # steps to follow to remove old settings
-        pass
-
-    text = context.readDataFile( _FILENAME )
-
-    if text is not None:
-
-        ccc = CookieCrumblerImportConfigurator( site, encoding )
-        cc_info = ccc.parseXML( text )
-
-        # now act on the settings we've retrieved
-        cc = site.cookie_authentication
-        props = ccc.parseXML(text)
-
-        cc.auth_cookie = props['auth_cookie']
-        cc.name_cookie = props['name_cookie']
-        cc.pw_cookie = props['pw_cookie']
-        cc.persist_cookie = props['persist_cookie']
-        cc.auto_login_page = props['auto_login_page']
-        cc.logout_page = props['logout_page']
-        cc.unauth_page = props['unauth_page']
-        cc.local_cookie_path = props['local_cookie_path']
-        cc.cache_header_value = props['cache_header_value']
-        cc.log_username = props['log_username']
-
-        return 'Cookie crumbler settings imported.'
-
-
-def exportCookieCrumbler( context ):
-
-    """ Export cookiecrumbler properties as an XML file
-    """
-    site = context.getSite()
-    mhc = CookieCrumblerExportConfigurator( site ).__of__( site )
-    text = mhc.generateXML()
-
-    context.writeDataFile( _FILENAME, text, 'text/xml' )
-
-    return 'CookieCrumbler properties exported.'
-
-
-class CookieCrumblerExportConfigurator(ExportConfiguratorBase):
-    """ Synthesize XML description of cc properties.
-    """
-    security = ClassSecurityInfo()
-
-    security.declareProtected( ManagePortal, 'getCookieCrumblerInfo' )
-    def getCookieCrumblerInfo( self ):
-        """ List the valid role IDs for our site.
-        """
-        cc = self._site.cookie_authentication
-        config = {}
-        config['auth_cookie'] = cc.auth_cookie
-        config['name_cookie'] = cc.name_cookie
-        config['pw_cookie'] = cc.pw_cookie
-        config['persist_cookie'] = cc.persist_cookie
-        config['auto_login_page'] = cc.auto_login_page
-        config['logout_page'] = cc.logout_page
-        config['unauth_page'] = cc.unauth_page
-        config['local_cookie_path'] = cc.local_cookie_path
-        config['cache_header_value'] = cc.cache_header_value
-        config['log_username'] = cc.log_username
-        return config
-
-    def _getExportTemplate(self):
-
-        return PageTemplateFile('ccExport.xml', _xmldir)
-
-
-InitializeClass(CookieCrumblerExportConfigurator)
-
-class CookieCrumblerImportConfigurator(ImportConfiguratorBase):
-
-    def _getImportMapping(self):
-
-        return {'cookiecrumbler':
-                  { 'auth_cookie': {},
-                    'name_cookie': {},
-                    'pw_cookie': {},
-                    'persist_cookie': {},
-                    'auto_login_page': {},
-                    'logout_page': {},
-                    'unauth_page': {},
-                    'local_cookie_path': {CONVERTER: self._convertToBoolean},
-                    'cache_header_value': {},
-                    'log_username': {CONVERTER: self._convertToBoolean},
-                  }
-               }
-
-InitializeClass(CookieCrumblerImportConfigurator)
-
-# BBB: will be removed in CMF 1.7
-class CookieCrumblerConfigurator(CookieCrumblerImportConfigurator,
-                                 CookieCrumblerExportConfigurator):
-    def __init__(self, site, encoding=None):
-        CookieCrumblerImportConfigurator.__init__(self, site, encoding)
-        CookieCrumblerExportConfigurator.__init__(self, site, encoding)
-
-InitializeClass(CookieCrumblerConfigurator)
-
+##############################################################################
+#
+# Copyright (c) 2004 Zope Corporation and Contributors. All Rights Reserved.
+#
+# This software is subject to the provisions of the Zope Public License,
+# Version 2.1 (ZPL).  A copy of the ZPL should accompany this distribution.
+# THIS SOFTWARE IS PROVIDED "AS IS" AND ANY AND ALL EXPRESS OR IMPLIED
+# WARRANTIES ARE DISCLAIMED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+# WARRANTIES OF TITLE, MERCHANTABILITY, AGAINST INFRINGEMENT, AND FITNESS
+# FOR A PARTICULAR PURPOSE.
+#
+##############################################################################
+""" CMFSetup:  Mailhost import/export
+
+$Id$
+"""
+
+from AccessControl import ClassSecurityInfo
+from AccessControl.Permission import Permission
+from Globals import InitializeClass
+from Products.PageTemplates.PageTemplateFile import PageTemplateFile
+
+from Products.CMFCore.utils import getToolByName
+
+from permissions import ManagePortal
+from utils import _xmldir
+from utils import ExportConfiguratorBase, ImportConfiguratorBase
+from utils import CONVERTER, DEFAULT, KEY
+
+
+#
+#   Configurator entry points
+#
+_FILENAME = 'cookieauth.xml'
+
+def importCookieCrumbler( context ):
+
+    """ Import cookiecrumbler settings from an XML file.
+    """
+    site = context.getSite()
+    encoding = context.getEncoding()
+
+    if context.shouldPurge():
+        # steps to follow to remove old settings
+        pass
+
+    text = context.readDataFile( _FILENAME )
+
+    if text is not None:
+
+        ccc = CookieCrumblerImportConfigurator( site, encoding )
+        cc_info = ccc.parseXML( text )
+
+        # now act on the settings we've retrieved
+        cc = site.cookie_authentication
+        props = ccc.parseXML(text)
+
+        cc.auth_cookie = props['auth_cookie']
+        cc.name_cookie = props['name_cookie']
+        cc.pw_cookie = props['pw_cookie']
+        cc.persist_cookie = props['persist_cookie']
+        cc.auto_login_page = props['auto_login_page']
+        cc.logout_page = props['logout_page']
+        cc.unauth_page = props['unauth_page']
+        cc.local_cookie_path = props['local_cookie_path']
+        cc.cache_header_value = props['cache_header_value']
+        cc.log_username = props['log_username']
+
+        return 'Cookie crumbler settings imported.'
+
+
+def exportCookieCrumbler( context ):
+
+    """ Export cookiecrumbler properties as an XML file
+    """
+    site = context.getSite()
+    mhc = CookieCrumblerExportConfigurator( site ).__of__( site )
+    text = mhc.generateXML()
+
+    context.writeDataFile( _FILENAME, text, 'text/xml' )
+
+    return 'CookieCrumbler properties exported.'
+
+
+class CookieCrumblerExportConfigurator(ExportConfiguratorBase):
+    """ Synthesize XML description of cc properties.
+    """
+    security = ClassSecurityInfo()
+
+    security.declareProtected( ManagePortal, 'getCookieCrumblerInfo' )
+    def getCookieCrumblerInfo( self ):
+        """ List the valid role IDs for our site.
+        """
+        cc = self._site.cookie_authentication
+        config = {}
+        config['auth_cookie'] = cc.auth_cookie
+        config['name_cookie'] = cc.name_cookie
+        config['pw_cookie'] = cc.pw_cookie
+        config['persist_cookie'] = cc.persist_cookie
+        config['auto_login_page'] = cc.auto_login_page
+        config['logout_page'] = cc.logout_page
+        config['unauth_page'] = cc.unauth_page
+        config['local_cookie_path'] = cc.local_cookie_path
+        config['cache_header_value'] = cc.cache_header_value
+        config['log_username'] = cc.log_username
+        return config
+
+    def _getExportTemplate(self):
+
+        return PageTemplateFile('ccExport.xml', _xmldir)
+
+
+InitializeClass(CookieCrumblerExportConfigurator)
+
+class CookieCrumblerImportConfigurator(ImportConfiguratorBase):
+
+    def _getImportMapping(self):
+
+        return {'cookiecrumbler':
+                  { 'auth_cookie': {},
+                    'name_cookie': {},
+                    'pw_cookie': {},
+                    'persist_cookie': {},
+                    'auto_login_page': {},
+                    'logout_page': {},
+                    'unauth_page': {},
+                    'local_cookie_path': {CONVERTER: self._convertToBoolean},
+                    'cache_header_value': {},
+                    'log_username': {CONVERTER: self._convertToBoolean},
+                  }
+               }
+
+InitializeClass(CookieCrumblerImportConfigurator)
+
+# BBB: will be removed in CMF 1.7
+class CookieCrumblerConfigurator(CookieCrumblerImportConfigurator,
+                                 CookieCrumblerExportConfigurator):
+    def __init__(self, site, encoding=None):
+        CookieCrumblerImportConfigurator.__init__(self, site, encoding)
+        CookieCrumblerExportConfigurator.__init__(self, site, encoding)
+
+InitializeClass(CookieCrumblerConfigurator)
+


Property changes on: CMF/trunk/CMFSetup/cookieauth.py
___________________________________________________________________
Name: svn:keywords
   + Id
Name: svn:eol-style
   + native

Modified: CMF/trunk/CMFSetup/mailhost.py
===================================================================
--- CMF/trunk/CMFSetup/mailhost.py	2005-09-30 07:04:05 UTC (rev 38698)
+++ CMF/trunk/CMFSetup/mailhost.py	2005-09-30 07:04:36 UTC (rev 38699)
@@ -1,134 +1,134 @@
-##############################################################################
-#
-# Copyright (c) 2004 Zope Corporation and Contributors. All Rights Reserved.
-#
-# This software is subject to the provisions of the Zope Public License,
-# Version 2.1 (ZPL).  A copy of the ZPL should accompany this distribution.
-# THIS SOFTWARE IS PROVIDED "AS IS" AND ANY AND ALL EXPRESS OR IMPLIED
-# WARRANTIES ARE DISCLAIMED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
-# WARRANTIES OF TITLE, MERCHANTABILITY, AGAINST INFRINGEMENT, AND FITNESS
-# FOR A PARTICULAR PURPOSE.
-#
-##############################################################################
-""" CMFSetup:  Mailhost import/export
-
-$Id: mailhost.py 36704 2004-12-14 20:56:58Z yuppie $
-"""
-
-from AccessControl import ClassSecurityInfo
-from AccessControl.Permission import Permission
-from Globals import InitializeClass
-from Products.PageTemplates.PageTemplateFile import PageTemplateFile
-
-from Products.CMFCore.utils import getToolByName
-
-from permissions import ManagePortal
-from utils import _xmldir
-from utils import ExportConfiguratorBase, ImportConfiguratorBase
-from utils import CONVERTER, DEFAULT, KEY
-
-
-#
-#   Configurator entry points
-#
-_FILENAME = 'mailhost.xml'
-
-def importMailHost( context ):
-
-    """ Import mailhost settings from an XML file.
-    """
-    site = context.getSite()
-    encoding = context.getEncoding()
-
-    if context.shouldPurge():
-        # steps to follow to remove old settings
-        pass
-
-    text = context.readDataFile( _FILENAME )
-
-    if text is not None:
-
-        mhc = MailHostImportConfigurator( site, encoding )
-        mh_info = mhc.parseXML( text )
-
-        # now act on the settings we've retrieved
-        mh = getToolByName(site, 'MailHost')
-
-        mh.smtp_host = mh_info['smtp_host']
-        mh.smtp_port = mh_info['smtp_port']
-        mh.smtp_uid = mh_info['smtp_uid']
-        mh.smtp_pwd = mh_info['smtp_pwd']
-
-    return 'Mailhost settings imported.'
-
-
-def exportMailHost( context ):
-
-    """ Export mailhost properties as an XML file
-    """
-    site = context.getSite()
-    mhc = MailHostExportConfigurator( site ).__of__( site )
-    text = mhc.generateXML()
-
-    context.writeDataFile( _FILENAME, text, 'text/xml' )
-
-    return 'MailHost properties exported.'
-
-
-class MailHostExportConfigurator(ExportConfiguratorBase):
-    """ Synthesize XML description of mailhost properties.
-    """
-    security = ClassSecurityInfo()
-
-    security.declareProtected( ManagePortal, 'getMailHostInfo' )
-    def getMailHostInfo( self ):
-        """ List the valid role IDs for our site.
-        """
-        mh = getToolByName(self._site, 'MailHost')
-
-        config = {}
-        config['id'] = mh.getId()
-        config['smtp_host'] = mh.smtp_host
-        config['smtp_port'] = int(mh.smtp_port)
-        config['smtp_uid'] = mh.smtp_uid
-        config['smtp_pwd'] = mh.smtp_pwd
-        config['i18n_domain'] = ''
-
-        return config
-
-    def _getExportTemplate(self):
-
-        return PageTemplateFile('mhcExport.xml', _xmldir)
-
-InitializeClass(MailHostExportConfigurator)
-
-
-class MailHostImportConfigurator(ImportConfiguratorBase):
-
-    def _getImportMapping(self):
-
-        return {
-          'mailhost':
-            { 'i18n:domain':{},
-              'id':         {},
-              'smtp_host':  {},
-              'smtp_port':  {},
-              'smtp_uid':   {},
-              'smtp_pwd':   {},
-              'xmlns:i18n': {} },
-          }
-
-InitializeClass(MailHostImportConfigurator)
-
-# BBB: will be removed in CMF 1.7
-class MailHostConfigurator(MailHostImportConfigurator
-                          ,MailHostExportConfigurator
-                          ):
-
-    def __init__(self, site, encoding=None):
-        MailHostImportConfigurator.__init__(self, site, encoding=None)
-        MailHostExportConfigurator.__init__(self, site, encoding=None)
-
-InitializeClass(MailHostConfigurator)
-
-
+##############################################################################
+#
+# Copyright (c) 2004 Zope Corporation and Contributors. All Rights Reserved.
+#
+# This software is subject to the provisions of the Zope Public License,
+# Version 2.1 (ZPL).  A copy of the ZPL should accompany this distribution.
+# THIS SOFTWARE IS PROVIDED "AS IS" AND ANY AND ALL EXPRESS OR IMPLIED
+# WARRANTIES ARE DISCLAIMED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+# WARRANTIES OF TITLE, MERCHANTABILITY, AGAINST INFRINGEMENT, AND FITNESS
+# FOR A PARTICULAR PURPOSE.
+#
+##############################################################################
+""" CMFSetup:  Mailhost import/export
+
+$Id$
+"""
+
+from AccessControl import ClassSecurityInfo
+from AccessControl.Permission import Permission
+from Globals import InitializeClass
+from Products.PageTemplates.PageTemplateFile import PageTemplateFile
+
+from Products.CMFCore.utils import getToolByName
+
+from permissions import ManagePortal
+from utils import _xmldir
+from utils import ExportConfiguratorBase, ImportConfiguratorBase
+from utils import CONVERTER, DEFAULT, KEY
+
+
+#
+#   Configurator entry points
+#
+_FILENAME = 'mailhost.xml'
+
+def importMailHost( context ):
+
+    """ Import mailhost settings from an XML file.
+    """
+    site = context.getSite()
+    encoding = context.getEncoding()
+
+    if context.shouldPurge():
+        # steps to follow to remove old settings
+        pass
+
+    text = context.readDataFile( _FILENAME )
+
+    if text is not None:
+
+        mhc = MailHostImportConfigurator( site, encoding )
+        mh_info = mhc.parseXML( text )
+
+        # now act on the settings we've retrieved
+        mh = getToolByName(site, 'MailHost')
+
+        mh.smtp_host = mh_info['smtp_host']
+        mh.smtp_port = mh_info['smtp_port']
+        mh.smtp_uid = mh_info['smtp_uid']
+        mh.smtp_pwd = mh_info['smtp_pwd']
+
+    return 'Mailhost settings imported.'
+
+
+def exportMailHost( context ):
+
+    """ Export mailhost properties as an XML file
+    """
+    site = context.getSite()
+    mhc = MailHostExportConfigurator( site ).__of__( site )
+    text = mhc.generateXML()
+
+    context.writeDataFile( _FILENAME, text, 'text/xml' )
+
+    return 'MailHost properties exported.'
+
+
+class MailHostExportConfigurator(ExportConfiguratorBase):
+    """ Synthesize XML description of mailhost properties.
+    """
+    security = ClassSecurityInfo()
+
+    security.declareProtected( ManagePortal, 'getMailHostInfo' )
+    def getMailHostInfo( self ):
+        """ List the valid role IDs for our site.
+        """
+        mh = getToolByName(self._site, 'MailHost')
+
+        config = {}
+        config['id'] = mh.getId()
+        config['smtp_host'] = mh.smtp_host
+        config['smtp_port'] = int(mh.smtp_port)
+        config['smtp_uid'] = mh.smtp_uid
+        config['smtp_pwd'] = mh.smtp_pwd
+        config['i18n_domain'] = ''
+
+        return config
+
+    def _getExportTemplate(self):
+
+        return PageTemplateFile('mhcExport.xml', _xmldir)
+
+InitializeClass(MailHostExportConfigurator)
+
+
+class MailHostImportConfigurator(ImportConfiguratorBase):
+
+    def _getImportMapping(self):
+
+        return {
+          'mailhost':
+            { 'i18n:domain':{},
+              'id':         {},
+              'smtp_host':  {},
+              'smtp_port':  {},
+              'smtp_uid':   {},
+              'smtp_pwd':   {},
+              'xmlns:i18n': {} },
+          }
+
+InitializeClass(MailHostImportConfigurator)
+
+# BBB: will be removed in CMF 1.7
+class MailHostConfigurator(MailHostImportConfigurator
+                          ,MailHostExportConfigurator
+                          ):
+
+    def __init__(self, site, encoding=None):
+        MailHostImportConfigurator.__init__(self, site, encoding=None)
+        MailHostExportConfigurator.__init__(self, site, encoding=None)
+
+InitializeClass(MailHostConfigurator)
+
+


Property changes on: CMF/trunk/CMFSetup/mailhost.py
___________________________________________________________________
Name: svn:keywords
   + Id
Name: svn:eol-style
   + native

Copied: CMF/trunk/CMFSetup/tests/test_cookieauth.py (from rev 38697, CMF/trunk/CMFSetup/tests/test_cookiecrumbler.py)
===================================================================
--- CMF/trunk/CMFSetup/tests/test_cookiecrumbler.py	2005-09-29 19:45:40 UTC (rev 38697)
+++ CMF/trunk/CMFSetup/tests/test_cookieauth.py	2005-09-30 07:04:36 UTC (rev 38699)
@@ -0,0 +1,225 @@
+##############################################################################
+#
+# Copyright (c) 2004 Zope Corporation and Contributors. All Rights Reserved.
+#
+# This software is subject to the provisions of the Zope Public License,
+# Version 2.1 (ZPL).  A copy of the ZPL should accompany this distribution.
+# THIS SOFTWARE IS PROVIDED "AS IS" AND ANY AND ALL EXPRESS OR IMPLIED
+# WARRANTIES ARE DISCLAIMED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+# WARRANTIES OF TITLE, MERCHANTABILITY, AGAINST INFRINGEMENT, AND FITNESS
+# FOR A PARTICULAR PURPOSE.
+#
+##############################################################################
+""" Cookiecrumbler properties export / import unit tests.
+
+$Id$
+"""
+import unittest
+import Testing
+import Zope2
+Zope2.startup()
+
+from OFS.Folder import Folder
+
+from common import BaseRegistryTests
+from common import DummyExportContext
+from common import DummyImportContext
+
+
+_DEFAULT_EXPORT = """\
+<?xml version="1.0"?>
+<cookiecrumbler auth_cookie="__ac" cache_header_value="private"
+    name_cookie="__ac_name" log_username="1"
+    persist_cookie="__ac_persistent"
+    pw_cookie="__ac_password" local_cookie_path="0"
+    auto_login_page="login_form" unauth_page=""
+    logout_page="logged_out"/>
+"""
+
+_CHANGED_EXPORT = """\
+<?xml version="1.0"?>
+<cookiecrumbler auth_cookie="value1" cache_header_value="value2"
+    name_cookie="value3" log_username="0"
+    persist_cookie="value4"
+    pw_cookie="value5" local_cookie_path="1"
+    auto_login_page="value6" unauth_page="value7"
+    logout_page="value8"/>
+"""
+
+class DummySite(Folder):
+    pass
+
+
+class DummyCookieCrumbler:
+
+    auth_cookie = '__ac'
+    cache_header_value = 'private'
+    name_cookie = '__ac_name'
+    log_username = 1
+    persist_cookie = '__ac_persistent'
+    pw_cookie = '__ac_password'
+    local_cookie_path = 0
+    auto_login_page = 'login_form'
+    unauth_page = ''
+    logout_page = 'logged_out'
+
+class _CookieCrumblerSetup(BaseRegistryTests):
+
+    def _initSite(self, use_changed=False):
+
+        self.root.site = DummySite()
+        site = self.root.site
+        site.cookie_authentication = DummyCookieCrumbler()
+        cc = site.cookie_authentication
+ 
+        if use_changed:
+            cc.auth_cookie = 'value1'
+            cc.cache_header_value = 'value2'
+            cc.name_cookie = 'value3'
+            cc.log_username = 0
+            cc.persist_cookie = 'value4'
+            cc.pw_cookie = 'value5'
+            cc.local_cookie_path = 1
+            cc.auto_login_page = 'value6'
+            cc.unauth_page = 'value7'
+            cc.logout_page = 'value8'
+
+        return site
+
+class CookieCrumblerConfiguratorTests(_CookieCrumblerSetup):
+
+    def _getTargetClass(self):
+
+        from Products.CMFSetup.cookieauth import CookieCrumblerConfigurator
+        return CookieCrumblerConfigurator
+
+    def test_generateXML_default( self ):
+
+        site = self._initSite()
+        configurator = self._makeOne( site ).__of__( site )
+
+        self._compareDOM( configurator.generateXML(), _DEFAULT_EXPORT )
+
+    def test_generateXML_changed( self ):
+
+        site = self._initSite(use_changed=True)
+        configurator = self._makeOne( site ).__of__( site )
+
+        self._compareDOM( configurator.generateXML(), _CHANGED_EXPORT )
+
+    def test_parseXML_default( self ):
+
+        site = self._initSite()
+        configurator = self._makeOne(site)
+        props = configurator.parseXML(_DEFAULT_EXPORT)
+
+        self.assertEqual( props['auth_cookie'],'__ac')
+        self.assertEqual( props['cache_header_value'],'private')
+        self.assertEqual( props['name_cookie'],'__ac_name')
+        self.assertEqual( props['log_username'],1)
+        self.assertEqual( props['persist_cookie'],'__ac_persistent')
+        self.assertEqual( props['pw_cookie'],'__ac_password')
+        self.assertEqual( props['local_cookie_path'],0)
+        self.assertEqual( props['auto_login_page'],'login_form')
+        self.assertEqual( props['unauth_page'],'')
+        self.assertEqual( props['logout_page'],'logged_out')
+
+    def test_parseXML_changed( self ):
+
+        site = self._initSite()
+        configurator = self._makeOne(site)
+        props = configurator.parseXML(_CHANGED_EXPORT)
+
+        self.assertEqual( props['auth_cookie'],'value1')
+        self.assertEqual( props['cache_header_value'],'value2')
+        self.assertEqual( props['name_cookie'],'value3')
+        self.assertEqual( props['log_username'],0)
+        self.assertEqual( props['persist_cookie'],'value4')
+        self.assertEqual( props['pw_cookie'],'value5')
+        self.assertEqual( props['local_cookie_path'],1)
+        self.assertEqual( props['auto_login_page'],'value6')
+        self.assertEqual( props['unauth_page'],'value7')
+        self.assertEqual( props['logout_page'],'value8')
+
+
+class Test_importCookieCrumbler(_CookieCrumblerSetup):
+
+    def test_normal(self):
+        site = self._initSite()
+        context = DummyImportContext(site)
+        context._files['cookieauth.xml'] = _CHANGED_EXPORT
+
+        from Products.CMFSetup.cookieauth import importCookieCrumbler
+        importCookieCrumbler(context)
+
+        cc = site.cookie_authentication
+        self.assertEqual( cc.auth_cookie, 'value1' )
+        self.assertEqual( cc.cache_header_value, 'value2' )
+        self.assertEqual( cc.name_cookie, 'value3' )
+        self.assertEqual( cc.log_username, 0 )
+        self.assertEqual( cc.persist_cookie, 'value4' )
+        self.assertEqual( cc.pw_cookie, 'value5' )
+        self.assertEqual( cc.local_cookie_path, 1 )
+        self.assertEqual( cc.auto_login_page, 'value6' )
+        self.assertEqual( cc.unauth_page, 'value7' )
+        self.assertEqual( cc.logout_page, 'value8' )
+
+    def test_normal_encode_as_ascii(self):
+        site = self._initSite()
+        context = DummyImportContext(site, encoding='ascii')
+        context._files['cookieauth.xml'] = _CHANGED_EXPORT
+
+        from Products.CMFSetup.cookieauth import importCookieCrumbler
+        importCookieCrumbler(context)
+
+        cc = site.cookie_authentication
+        self.assertEqual( cc.auth_cookie, 'value1' )
+        self.assertEqual( cc.cache_header_value, 'value2' )
+        self.assertEqual( cc.name_cookie, 'value3' )
+        self.assertEqual( cc.log_username, 0 )
+        self.assertEqual( cc.persist_cookie, 'value4' )
+        self.assertEqual( cc.pw_cookie, 'value5' )
+        self.assertEqual( cc.local_cookie_path, 1 )
+        self.assertEqual( cc.auto_login_page, 'value6' )
+        self.assertEqual( cc.unauth_page, 'value7' )
+        self.assertEqual( cc.logout_page, 'value8' )
+
+
+class Test_exportCookieCrumbler(_CookieCrumblerSetup):
+
+    def test_unchanged(self):
+        site = self._initSite( use_changed=False )
+        context = DummyExportContext(site)
+
+        from Products.CMFSetup.cookieauth import exportCookieCrumbler
+        exportCookieCrumbler(context)
+
+        self.assertEqual( len(context._wrote), 1 )
+        filename, text, content_type = context._wrote[0]
+        self.assertEqual(filename, 'cookieauth.xml')
+        self._compareDOM(text, _DEFAULT_EXPORT)
+        self.assertEqual(content_type, 'text/xml')
+
+    def test_changed(self):
+        site = self._initSite( use_changed=True )
+        context = DummyExportContext( site )
+
+        from Products.CMFSetup.cookieauth import exportCookieCrumbler
+        exportCookieCrumbler(context)
+
+        self.assertEqual( len(context._wrote), 1 )
+        filename, text, content_type = context._wrote[0]
+        self.assertEqual(filename, 'cookieauth.xml')
+        self._compareDOM(text, _CHANGED_EXPORT)
+        self.assertEqual(content_type, 'text/xml')
+
+
+def test_suite():
+    return unittest.TestSuite((
+        unittest.makeSuite(CookieCrumblerConfiguratorTests),
+        unittest.makeSuite(Test_exportCookieCrumbler),
+        unittest.makeSuite(Test_importCookieCrumbler),
+        ))
+
+if __name__ == '__main__':
+    unittest.main(defaultTest='test_suite')


Property changes on: CMF/trunk/CMFSetup/tests/test_cookieauth.py
___________________________________________________________________
Name: svn:keywords
   + Id
Name: svn:eol-style
   + native

Deleted: CMF/trunk/CMFSetup/tests/test_cookiecrumbler.py
===================================================================
--- CMF/trunk/CMFSetup/tests/test_cookiecrumbler.py	2005-09-30 07:04:05 UTC (rev 38698)
+++ CMF/trunk/CMFSetup/tests/test_cookiecrumbler.py	2005-09-30 07:04:36 UTC (rev 38699)
@@ -1,225 +0,0 @@
-##############################################################################
-#
-# Copyright (c) 2004 Zope Corporation and Contributors. All Rights Reserved.
-#
-# This software is subject to the provisions of the Zope Public License,
-# Version 2.1 (ZPL).  A copy of the ZPL should accompany this distribution.
-# THIS SOFTWARE IS PROVIDED "AS IS" AND ANY AND ALL EXPRESS OR IMPLIED
-# WARRANTIES ARE DISCLAIMED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
-# WARRANTIES OF TITLE, MERCHANTABILITY, AGAINST INFRINGEMENT, AND FITNESS
-# FOR A PARTICULAR PURPOSE.
-#
-##############################################################################
-""" Cookiecrumbler properties export / import unit tests.
-
-$Id: test_cookiecrumbler.py 37061 2005-06-15 14:17:41Z tseaver $
-"""
-import unittest
-import Testing
-import Zope2
-Zope2.startup()
-
-from OFS.Folder import Folder
-
-from common import BaseRegistryTests
-from common import DummyExportContext
-from common import DummyImportContext
-
-
-_DEFAULT_EXPORT = """\
-<?xml version="1.0"?>
-<cookiecrumbler auth_cookie="__ac" cache_header_value="private"
-    name_cookie="__ac_name" log_username="1"
-    persist_cookie="__ac_persistent"
-    pw_cookie="__ac_password" local_cookie_path="0"
-    auto_login_page="login_form" unauth_page=""
-    logout_page="logged_out"/>
-"""
-
-_CHANGED_EXPORT = """\
-<?xml version="1.0"?>
-<cookiecrumbler auth_cookie="value1" cache_header_value="value2"
-    name_cookie="value3" log_username="0"
-    persist_cookie="value4"
-    pw_cookie="value5" local_cookie_path="1"
-    auto_login_page="value6" unauth_page="value7"
-    logout_page="value8"/>
-"""
-
-class DummySite(Folder):
-    pass
-
-
-class DummyCookieCrumbler:
-
-    auth_cookie = '__ac'
-    cache_header_value = 'private'
-    name_cookie = '__ac_name'
-    log_username = 1
-    persist_cookie = '__ac_persistent'
-    pw_cookie = '__ac_password'
-    local_cookie_path = 0
-    auto_login_page = 'login_form'
-    unauth_page = ''
-    logout_page = 'logged_out'
-
-class _CookieCrumblerSetup(BaseRegistryTests):
-
-    def _initSite(self, use_changed=False):
-
-        self.root.site = DummySite()
-        site = self.root.site
-        site.cookie_authentication = DummyCookieCrumbler()
-        cc = site.cookie_authentication
- 
-        if use_changed:
-            cc.auth_cookie = 'value1'
-            cc.cache_header_value = 'value2'
-            cc.name_cookie = 'value3'
-            cc.log_username = 0
-            cc.persist_cookie = 'value4'
-            cc.pw_cookie = 'value5'
-            cc.local_cookie_path = 1
-            cc.auto_login_page = 'value6'
-            cc.unauth_page = 'value7'
-            cc.logout_page = 'value8'
-
-        return site
-
-class CookieCrumblerConfiguratorTests(_CookieCrumblerSetup):
-
-    def _getTargetClass(self):
-
-        from Products.CMFSetup.cookieauth import CookieCrumblerConfigurator
-        return CookieCrumblerConfigurator
-
-    def test_generateXML_default( self ):
-
-        site = self._initSite()
-        configurator = self._makeOne( site ).__of__( site )
-
-        self._compareDOM( configurator.generateXML(), _DEFAULT_EXPORT )
-
-    def test_generateXML_changed( self ):
-
-        site = self._initSite(use_changed=True)
-        configurator = self._makeOne( site ).__of__( site )
-
-        self._compareDOM( configurator.generateXML(), _CHANGED_EXPORT )
-
-    def test_parseXML_default( self ):
-
-        site = self._initSite()
-        configurator = self._makeOne(site)
-        props = configurator.parseXML(_DEFAULT_EXPORT)
-
-        self.assertEqual( props['auth_cookie'],'__ac')
-        self.assertEqual( props['cache_header_value'],'private')
-        self.assertEqual( props['name_cookie'],'__ac_name')
-        self.assertEqual( props['log_username'],1)
-        self.assertEqual( props['persist_cookie'],'__ac_persistent')
-        self.assertEqual( props['pw_cookie'],'__ac_password')
-        self.assertEqual( props['local_cookie_path'],0)
-        self.assertEqual( props['auto_login_page'],'login_form')
-        self.assertEqual( props['unauth_page'],'')
-        self.assertEqual( props['logout_page'],'logged_out')
-
-    def test_parseXML_changed( self ):
-
-        site = self._initSite()
-        configurator = self._makeOne(site)
-        props = configurator.parseXML(_CHANGED_EXPORT)
-
-        self.assertEqual( props['auth_cookie'],'value1')
-        self.assertEqual( props['cache_header_value'],'value2')
-        self.assertEqual( props['name_cookie'],'value3')
-        self.assertEqual( props['log_username'],0)
-        self.assertEqual( props['persist_cookie'],'value4')
-        self.assertEqual( props['pw_cookie'],'value5')
-        self.assertEqual( props['local_cookie_path'],1)
-        self.assertEqual( props['auto_login_page'],'value6')
-        self.assertEqual( props['unauth_page'],'value7')
-        self.assertEqual( props['logout_page'],'value8')
-
-
-class Test_importCookieCrumbler(_CookieCrumblerSetup):
-
-    def test_normal(self):
-        site = self._initSite()
-        context = DummyImportContext(site)
-        context._files['cookieauth.xml'] = _CHANGED_EXPORT
-
-        from Products.CMFSetup.cookieauth import importCookieCrumbler
-        importCookieCrumbler(context)
-
-        cc = site.cookie_authentication
-        self.assertEqual( cc.auth_cookie, 'value1' )
-        self.assertEqual( cc.cache_header_value, 'value2' )
-        self.assertEqual( cc.name_cookie, 'value3' )
-        self.assertEqual( cc.log_username, 0 )
-        self.assertEqual( cc.persist_cookie, 'value4' )
-        self.assertEqual( cc.pw_cookie, 'value5' )
-        self.assertEqual( cc.local_cookie_path, 1 )
-        self.assertEqual( cc.auto_login_page, 'value6' )
-        self.assertEqual( cc.unauth_page, 'value7' )
-        self.assertEqual( cc.logout_page, 'value8' )
-
-    def test_normal_encode_as_ascii(self):
-        site = self._initSite()
-        context = DummyImportContext(site, encoding='ascii')
-        context._files['cookieauth.xml'] = _CHANGED_EXPORT
-
-        from Products.CMFSetup.cookieauth import importCookieCrumbler
-        importCookieCrumbler(context)
-
-        cc = site.cookie_authentication
-        self.assertEqual( cc.auth_cookie, 'value1' )
-        self.assertEqual( cc.cache_header_value, 'value2' )
-        self.assertEqual( cc.name_cookie, 'value3' )
-        self.assertEqual( cc.log_username, 0 )
-        self.assertEqual( cc.persist_cookie, 'value4' )
-        self.assertEqual( cc.pw_cookie, 'value5' )
-        self.assertEqual( cc.local_cookie_path, 1 )
-        self.assertEqual( cc.auto_login_page, 'value6' )
-        self.assertEqual( cc.unauth_page, 'value7' )
-        self.assertEqual( cc.logout_page, 'value8' )
-
-
-class Test_exportCookieCrumbler(_CookieCrumblerSetup):
-
-    def test_unchanged(self):
-        site = self._initSite( use_changed=False )
-        context = DummyExportContext(site)
-
-        from Products.CMFSetup.cookieauth import exportCookieCrumbler
-        exportCookieCrumbler(context)
-
-        self.assertEqual( len(context._wrote), 1 )
-        filename, text, content_type = context._wrote[0]
-        self.assertEqual(filename, 'cookieauth.xml')
-        self._compareDOM(text, _DEFAULT_EXPORT)
-        self.assertEqual(content_type, 'text/xml')
-
-    def test_changed(self):
-        site = self._initSite( use_changed=True )
-        context = DummyExportContext( site )
-
-        from Products.CMFSetup.cookieauth import exportCookieCrumbler
-        exportCookieCrumbler(context)
-
-        self.assertEqual( len(context._wrote), 1 )
-        filename, text, content_type = context._wrote[0]
-        self.assertEqual(filename, 'cookieauth.xml')
-        self._compareDOM(text, _CHANGED_EXPORT)
-        self.assertEqual(content_type, 'text/xml')
-
-
-def test_suite():
-    return unittest.TestSuite((
-        unittest.makeSuite(CookieCrumblerConfiguratorTests),
-        unittest.makeSuite(Test_exportCookieCrumbler),
-        unittest.makeSuite(Test_importCookieCrumbler),
-        ))
-
-if __name__ == '__main__':
-    unittest.main(defaultTest='test_suite')

Modified: CMF/trunk/CMFSetup/tests/test_mailhost.py
===================================================================
--- CMF/trunk/CMFSetup/tests/test_mailhost.py	2005-09-30 07:04:05 UTC (rev 38698)
+++ CMF/trunk/CMFSetup/tests/test_mailhost.py	2005-09-30 07:04:36 UTC (rev 38699)
@@ -1,188 +1,188 @@
-##############################################################################
-#
-# Copyright (c) 2004 Zope Corporation and Contributors. All Rights Reserved.
-#
-# This software is subject to the provisions of the Zope Public License,
-# Version 2.1 (ZPL).  A copy of the ZPL should accompany this distribution.
-# THIS SOFTWARE IS PROVIDED "AS IS" AND ANY AND ALL EXPRESS OR IMPLIED
-# WARRANTIES ARE DISCLAIMED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
-# WARRANTIES OF TITLE, MERCHANTABILITY, AGAINST INFRINGEMENT, AND FITNESS
-# FOR A PARTICULAR PURPOSE.
-#
-##############################################################################
-""" MailHost properties export / import unit tests.
-
-$Id: test_mailhost.py 37061 2005-06-15 14:17:41Z tseaver $
-"""
-import unittest
-import Testing
-import Zope2
-Zope2.startup()
-
-from OFS.Folder import Folder
-
-from common import BaseRegistryTests
-from common import DummyExportContext
-from common import DummyImportContext
-
-
-_DEFAULT_EXPORT = """\
-<?xml version="1.0"?>
-<mailhost id="MailHost" smtp_pwd="" smtp_port="25"
-          smtp_host="localhost.localdomain" i18n:domain="" smtp_uid=""
-          xmlns:i18n="http://xml.zope.org/namespaces/i18n"/>
-"""
-
-_CHANGED_EXPORT = """\
-<?xml version="1.0"?>
-<mailhost id="MailHost" smtp_pwd="value1" smtp_port="1"
-          smtp_host="value2" i18n:domain="" smtp_uid="value3"
-          xmlns:i18n="http://xml.zope.org/namespaces/i18n"/>
-"""
-
-class DummySite(Folder):
-    pass
-
-
-class DummyMailHost:
-
-    smtp_port='25'
-    smtp_host="localhost.localdomain"
-    smtp_uid=""
-    smtp_pwd=""
-    id='MailHost'
-
-    def getId(self):
-       return self.id
-
-class _MailHostSetup(BaseRegistryTests):
-
-    def _initSite(self, use_changed=False):
-
-        self.root.site = DummySite()
-        site = self.root.site
-        site.MailHost = DummyMailHost()
-        mh = site.MailHost
- 
-        if use_changed:
-           mh.smtp_port='1'
-           mh.smtp_pwd="value1"
-           mh.smtp_host="value2"
-           mh.smtp_uid="value3"
-
-
-        return site
-
-class MailHostConfiguratorTests(_MailHostSetup):
-
-    def _getTargetClass(self):
-
-        from Products.CMFSetup.mailhost import MailHostConfigurator
-        return MailHostConfigurator
-
-    def test_generateXML_default( self ):
-
-        site = self._initSite()
-        configurator = self._makeOne( site ).__of__( site )
-
-        self._compareDOM( configurator.generateXML(), _DEFAULT_EXPORT )
-
-    def test_generateXML_changed( self ):
-
-        site = self._initSite(use_changed=True)
-        configurator = self._makeOne( site ).__of__( site )
-
-        self._compareDOM( configurator.generateXML(), _CHANGED_EXPORT )
-
-    def test_parseXML_default( self ):
-
-        site = self._initSite()
-        configurator = self._makeOne(site)
-        props = configurator.parseXML(_DEFAULT_EXPORT)
-
-        self.assertEqual( props['smtp_port'],'25')
-        self.assertEqual( props['smtp_host'],'localhost.localdomain')
-        self.assertEqual( props['smtp_uid'],'')
-        self.assertEqual( props['smtp_pwd'],'')
-
-    def test_parseXML_changed( self ):
-
-        site = self._initSite()
-        configurator = self._makeOne(site)
-        props = configurator.parseXML(_CHANGED_EXPORT)
-
-        self.assertEqual( props['smtp_pwd'], 'value1' )
-        self.assertEqual( props['smtp_host'], 'value2' )
-        self.assertEqual( props['smtp_uid'], 'value3' )
-        self.assertEqual( props['smtp_port'], '1' )
-
-
-class Test_importMailHost(_MailHostSetup):
-
-    def test_normal(self):
-        site = self._initSite()
-        context = DummyImportContext(site)
-        context._files['mailhost.xml'] = _CHANGED_EXPORT
-
-        from Products.CMFSetup.mailhost import importMailHost
-        importMailHost(context)
-
-        mh = site.MailHost
-        self.assertEqual( mh.smtp_pwd, 'value1' )
-        self.assertEqual( mh.smtp_host, 'value2' )
-        self.assertEqual( mh.smtp_uid, 'value3' )
-        self.assertEqual( mh.smtp_port, '1' )
-
-    def test_normal_encode_as_ascii(self):
-        site = self._initSite()
-        context = DummyImportContext(site, encoding='ascii')
-        context._files['mailhost.xml'] = _CHANGED_EXPORT
-
-        from Products.CMFSetup.mailhost import importMailHost
-        importMailHost(context)
-
-        mh = site.MailHost
-        self.assertEqual( mh.smtp_pwd, 'value1' )
-        self.assertEqual( mh.smtp_host, 'value2' )
-        self.assertEqual( mh.smtp_uid, 'value3' )
-        self.assertEqual( mh.smtp_port, '1' )
-
-
-class Test_exportMailHost(_MailHostSetup):
-
-    def test_unchanged(self):
-        site = self._initSite( use_changed=False )
-        context = DummyExportContext(site)
-
-        from Products.CMFSetup.mailhost import exportMailHost
-        exportMailHost(context)
-
-        self.assertEqual( len(context._wrote), 1 )
-        filename, text, content_type = context._wrote[0]
-        self.assertEqual(filename, 'mailhost.xml')
-        self._compareDOM(text, _DEFAULT_EXPORT)
-        self.assertEqual(content_type, 'text/xml')
-
-    def test_changed(self):
-        site = self._initSite( use_changed=True )
-        context = DummyExportContext( site )
-
-        from Products.CMFSetup.mailhost import exportMailHost
-        exportMailHost(context)
-
-        self.assertEqual( len(context._wrote), 1 )
-        filename, text, content_type = context._wrote[0]
-        self.assertEqual(filename, 'mailhost.xml')
-        self._compareDOM(text, _CHANGED_EXPORT)
-        self.assertEqual(content_type, 'text/xml')
-
-
-def test_suite():
-    return unittest.TestSuite((
-        unittest.makeSuite(MailHostConfiguratorTests),
-        unittest.makeSuite(Test_exportMailHost),
-        unittest.makeSuite(Test_importMailHost),
-        ))
-
-if __name__ == '__main__':
-    unittest.main(defaultTest='test_suite')
+##############################################################################
+#
+# Copyright (c) 2004 Zope Corporation and Contributors. All Rights Reserved.
+#
+# This software is subject to the provisions of the Zope Public License,
+# Version 2.1 (ZPL).  A copy of the ZPL should accompany this distribution.
+# THIS SOFTWARE IS PROVIDED "AS IS" AND ANY AND ALL EXPRESS OR IMPLIED
+# WARRANTIES ARE DISCLAIMED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+# WARRANTIES OF TITLE, MERCHANTABILITY, AGAINST INFRINGEMENT, AND FITNESS
+# FOR A PARTICULAR PURPOSE.
+#
+##############################################################################
+""" MailHost properties export / import unit tests.
+
+$Id$
+"""
+import unittest
+import Testing
+import Zope2
+Zope2.startup()
+
+from OFS.Folder import Folder
+
+from common import BaseRegistryTests
+from common import DummyExportContext
+from common import DummyImportContext
+
+
+_DEFAULT_EXPORT = """\
+<?xml version="1.0"?>
+<mailhost id="MailHost" smtp_pwd="" smtp_port="25"
+          smtp_host="localhost.localdomain" i18n:domain="" smtp_uid=""
+          xmlns:i18n="http://xml.zope.org/namespaces/i18n"/>
+"""
+
+_CHANGED_EXPORT = """\
+<?xml version="1.0"?>
+<mailhost id="MailHost" smtp_pwd="value1" smtp_port="1"
+          smtp_host="value2" i18n:domain="" smtp_uid="value3"
+          xmlns:i18n="http://xml.zope.org/namespaces/i18n"/>
+"""
+
+class DummySite(Folder):
+    pass
+
+
+class DummyMailHost:
+
+    smtp_port='25'
+    smtp_host="localhost.localdomain"
+    smtp_uid=""
+    smtp_pwd=""
+    id='MailHost'
+
+    def getId(self):
+       return self.id
+
+class _MailHostSetup(BaseRegistryTests):
+
+    def _initSite(self, use_changed=False):
+
+        self.root.site = DummySite()
+        site = self.root.site
+        site.MailHost = DummyMailHost()
+        mh = site.MailHost
+ 
+        if use_changed:
+           mh.smtp_port='1'
+           mh.smtp_pwd="value1"
+           mh.smtp_host="value2"
+           mh.smtp_uid="value3"
+
+
+        return site
+
+class MailHostConfiguratorTests(_MailHostSetup):
+
+    def _getTargetClass(self):
+
+        from Products.CMFSetup.mailhost import MailHostConfigurator
+        return MailHostConfigurator
+
+    def test_generateXML_default( self ):
+
+        site = self._initSite()
+        configurator = self._makeOne( site ).__of__( site )
+
+        self._compareDOM( configurator.generateXML(), _DEFAULT_EXPORT )
+
+    def test_generateXML_changed( self ):
+
+        site = self._initSite(use_changed=True)
+        configurator = self._makeOne( site ).__of__( site )
+
+        self._compareDOM( configurator.generateXML(), _CHANGED_EXPORT )
+
+    def test_parseXML_default( self ):
+
+        site = self._initSite()
+        configurator = self._makeOne(site)
+        props = configurator.parseXML(_DEFAULT_EXPORT)
+
+        self.assertEqual( props['smtp_port'],'25')
+        self.assertEqual( props['smtp_host'],'localhost.localdomain')
+        self.assertEqual( props['smtp_uid'],'')
+        self.assertEqual( props['smtp_pwd'],'')
+
+    def test_parseXML_changed( self ):
+
+        site = self._initSite()
+        configurator = self._makeOne(site)
+        props = configurator.parseXML(_CHANGED_EXPORT)
+
+        self.assertEqual( props['smtp_pwd'], 'value1' )
+        self.assertEqual( props['smtp_host'], 'value2' )
+        self.assertEqual( props['smtp_uid'], 'value3' )
+        self.assertEqual( props['smtp_port'], '1' )
+
+
+class Test_importMailHost(_MailHostSetup):
+
+    def test_normal(self):
+        site = self._initSite()
+        context = DummyImportContext(site)
+        context._files['mailhost.xml'] = _CHANGED_EXPORT
+
+        from Products.CMFSetup.mailhost import importMailHost
+        importMailHost(context)
+
+        mh = site.MailHost
+        self.assertEqual( mh.smtp_pwd, 'value1' )
+        self.assertEqual( mh.smtp_host, 'value2' )
+        self.assertEqual( mh.smtp_uid, 'value3' )
+        self.assertEqual( mh.smtp_port, '1' )
+
+    def test_normal_encode_as_ascii(self):
+        site = self._initSite()
+        context = DummyImportContext(site, encoding='ascii')
+        context._files['mailhost.xml'] = _CHANGED_EXPORT
+
+        from Products.CMFSetup.mailhost import importMailHost
+        importMailHost(context)
+
+        mh = site.MailHost
+        self.assertEqual( mh.smtp_pwd, 'value1' )
+        self.assertEqual( mh.smtp_host, 'value2' )
+        self.assertEqual( mh.smtp_uid, 'value3' )
+        self.assertEqual( mh.smtp_port, '1' )
+
+
+class Test_exportMailHost(_MailHostSetup):
+
+    def test_unchanged(self):
+        site = self._initSite( use_changed=False )
+        context = DummyExportContext(site)
+
+        from Products.CMFSetup.mailhost import exportMailHost
+        exportMailHost(context)
+
+        self.assertEqual( len(context._wrote), 1 )
+        filename, text, content_type = context._wrote[0]
+        self.assertEqual(filename, 'mailhost.xml')
+        self._compareDOM(text, _DEFAULT_EXPORT)
+        self.assertEqual(content_type, 'text/xml')
+
+    def test_changed(self):
+        site = self._initSite( use_changed=True )
+        context = DummyExportContext( site )
+
+        from Products.CMFSetup.mailhost import exportMailHost
+        exportMailHost(context)
+
+        self.assertEqual( len(context._wrote), 1 )
+        filename, text, content_type = context._wrote[0]
+        self.assertEqual(filename, 'mailhost.xml')
+        self._compareDOM(text, _CHANGED_EXPORT)
+        self.assertEqual(content_type, 'text/xml')
+
+
+def test_suite():
+    return unittest.TestSuite((
+        unittest.makeSuite(MailHostConfiguratorTests),
+        unittest.makeSuite(Test_exportMailHost),
+        unittest.makeSuite(Test_importMailHost),
+        ))
+
+if __name__ == '__main__':
+    unittest.main(defaultTest='test_suite')


Property changes on: CMF/trunk/CMFSetup/tests/test_mailhost.py
___________________________________________________________________
Name: svn:keywords
   + Id
Name: svn:eol-style
   + native

Modified: CMF/trunk/CMFSetup/xml/ccExport.xml
===================================================================
--- CMF/trunk/CMFSetup/xml/ccExport.xml	2005-09-30 07:04:05 UTC (rev 38698)
+++ CMF/trunk/CMFSetup/xml/ccExport.xml	2005-09-30 07:04:36 UTC (rev 38699)
@@ -1,13 +1,13 @@
-<?xml version="1.0"?>
-<cookiecrumbler xmlns:tal="http://xml.zope.org/namespaces/tal"
-    tal:define="cc_info context/getCookieCrumblerInfo"
-    tal:attributes="auth_cookie cc_info/auth_cookie;
-                    name_cookie cc_info/name_cookie;
-                    pw_cookie cc_info/pw_cookie;
-                    persist_cookie cc_info/persist_cookie;
-                    auto_login_page cc_info/auto_login_page;
-                    logout_page cc_info/logout_page;
-                    unauth_page cc_info/unauth_page;
-                    local_cookie_path cc_info/local_cookie_path;
-                    cache_header_value cc_info/cache_header_value;
-                    log_username cc_info/log_username;" />
+<?xml version="1.0"?>
+<cookiecrumbler xmlns:tal="http://xml.zope.org/namespaces/tal"
+    tal:define="cc_info context/getCookieCrumblerInfo"
+    tal:attributes="auth_cookie cc_info/auth_cookie;
+                    name_cookie cc_info/name_cookie;
+                    pw_cookie cc_info/pw_cookie;
+                    persist_cookie cc_info/persist_cookie;
+                    auto_login_page cc_info/auto_login_page;
+                    logout_page cc_info/logout_page;
+                    unauth_page cc_info/unauth_page;
+                    local_cookie_path cc_info/local_cookie_path;
+                    cache_header_value cc_info/cache_header_value;
+                    log_username cc_info/log_username;" />


Property changes on: CMF/trunk/CMFSetup/xml/ccExport.xml
___________________________________________________________________
Name: svn:eol-style
   + native

Modified: CMF/trunk/CMFSetup/xml/mhcExport.xml
===================================================================
--- CMF/trunk/CMFSetup/xml/mhcExport.xml	2005-09-30 07:04:05 UTC (rev 38698)
+++ CMF/trunk/CMFSetup/xml/mhcExport.xml	2005-09-30 07:04:36 UTC (rev 38699)
@@ -1,12 +1,12 @@
-<?xml version="1.0"?>
-<mailhost xmlns:tal="http://xml.zope.org/namespaces/tal"
-          id="some_id"
-          tal:define="mh_info here/getMailHostInfo"
-          tal:attributes="xmlns:i18n string:http://xml.zope.org/namespaces/i18n;
-                          i18n:domain mh_info/i18n_domain;
-                          id mh_info/id;
-                          smtp_host mh_info/smtp_host;
-                          smtp_port mh_info/smtp_port;
-                          smtp_uid mh_info/smtp_uid;
-                          smtp_pwd mh_info/smtp_pwd;" />
-
+<?xml version="1.0"?>
+<mailhost xmlns:tal="http://xml.zope.org/namespaces/tal"
+          id="some_id"
+          tal:define="mh_info here/getMailHostInfo"
+          tal:attributes="xmlns:i18n string:http://xml.zope.org/namespaces/i18n;
+                          i18n:domain mh_info/i18n_domain;
+                          id mh_info/id;
+                          smtp_host mh_info/smtp_host;
+                          smtp_port mh_info/smtp_port;
+                          smtp_uid mh_info/smtp_uid;
+                          smtp_pwd mh_info/smtp_pwd;" />
+


Property changes on: CMF/trunk/CMFSetup/xml/mhcExport.xml
___________________________________________________________________
Name: svn:eol-style
   + native



More information about the CMF-checkins mailing list