[Checkins] SVN: z3c.language.session/trunk/ Moved
z3c.language.session to it's own top level package
Roger Ineichen
roger at projekt01.ch
Thu Nov 15 21:52:00 EST 2007
Log message for revision 81872:
Moved z3c.language.session to it's own top level package
Moved tests to README.txt
Changed:
_U z3c.language.session/trunk/
A z3c.language.session/trunk/CHANGES.txt
A z3c.language.session/trunk/README.txt
A z3c.language.session/trunk/bootstrap.py
A z3c.language.session/trunk/buildout.cfg
A z3c.language.session/trunk/setup.py
_U z3c.language.session/trunk/src/
A z3c.language.session/trunk/src/z3c/language/session/
A z3c.language.session/trunk/src/z3c/language/session/README.txt
U z3c.language.session/trunk/src/z3c/language/session/app.py
U z3c.language.session/trunk/src/z3c/language/session/interfaces.py
U z3c.language.session/trunk/src/z3c/language/session/tests.py
-=-
Property changes on: z3c.language.session/trunk
___________________________________________________________________
Name: svn:ignore
+ .installed.cfg
bin
develop-eggs
parts
Added: z3c.language.session/trunk/CHANGES.txt
===================================================================
--- z3c.language.session/trunk/CHANGES.txt (rev 0)
+++ z3c.language.session/trunk/CHANGES.txt 2007-11-16 02:52:00 UTC (rev 81872)
@@ -0,0 +1,8 @@
+=======
+CHANGES
+=======
+
+Version 0.5.0 (unreleased)
+--------------------------
+
+- Initial Release
Property changes on: z3c.language.session/trunk/CHANGES.txt
___________________________________________________________________
Name: svn:eol-style
+ native
Added: z3c.language.session/trunk/README.txt
===================================================================
--- z3c.language.session/trunk/README.txt (rev 0)
+++ z3c.language.session/trunk/README.txt 2007-11-16 02:52:00 UTC (rev 81872)
@@ -0,0 +1,2 @@
+This package provides a session which can be used to store a language. See
+z3c.language.negotiator for a sample usage.
Property changes on: z3c.language.session/trunk/README.txt
___________________________________________________________________
Name: svn:eol-style
+ native
Added: z3c.language.session/trunk/bootstrap.py
===================================================================
--- z3c.language.session/trunk/bootstrap.py (rev 0)
+++ z3c.language.session/trunk/bootstrap.py 2007-11-16 02:52:00 UTC (rev 81872)
@@ -0,0 +1,52 @@
+##############################################################################
+#
+# Copyright (c) 2007 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.
+#
+##############################################################################
+"""Bootstrap a buildout-based project
+
+Simply run this script in a directory containing a buildout.cfg.
+The script accepts buildout command-line options, so you can
+use the -c option to specify an alternate configuration file.
+
+$Id:$
+"""
+
+import os, shutil, sys, tempfile, urllib2
+
+tmpeggs = tempfile.mkdtemp()
+
+ez = {}
+exec urllib2.urlopen('http://peak.telecommunity.com/dist/ez_setup.py'
+ ).read() in ez
+ez['use_setuptools'](to_dir=tmpeggs, download_delay=0)
+
+import pkg_resources
+
+cmd = 'from setuptools.command.easy_install import main; main()'
+if sys.platform == 'win32':
+ cmd = '"%s"' % cmd # work around spawn lamosity on windows
+
+ws = pkg_resources.working_set
+assert os.spawnle(
+ os.P_WAIT, sys.executable, sys.executable,
+ '-c', cmd, '-mqNxd', tmpeggs, 'zc.buildout',
+ dict(os.environ,
+ PYTHONPATH=
+ ws.find(pkg_resources.Requirement.parse('setuptools')).location
+ ),
+ ) == 0
+
+ws.add_entry(tmpeggs)
+ws.require('zc.buildout')
+import zc.buildout.buildout
+zc.buildout.buildout.main(sys.argv[1:] + ['bootstrap'])
+shutil.rmtree(tmpeggs)
Property changes on: z3c.language.session/trunk/bootstrap.py
___________________________________________________________________
Name: svn:eol-style
+ native
Added: z3c.language.session/trunk/buildout.cfg
===================================================================
--- z3c.language.session/trunk/buildout.cfg (rev 0)
+++ z3c.language.session/trunk/buildout.cfg 2007-11-16 02:52:00 UTC (rev 81872)
@@ -0,0 +1,15 @@
+[buildout]
+develop = .
+parts = test checker coverage
+
+[test]
+recipe = zc.recipe.testrunner
+eggs = z3c.language.session [test]
+
+[checker]
+recipe = lovely.recipe:importchecker
+path = src/z3c/language/session
+
+[coverage]
+recipe = zc.recipe.egg
+eggs = z3c.coverage
Added: z3c.language.session/trunk/setup.py
===================================================================
--- z3c.language.session/trunk/setup.py (rev 0)
+++ z3c.language.session/trunk/setup.py 2007-11-16 02:52:00 UTC (rev 81872)
@@ -0,0 +1,69 @@
+##############################################################################
+#
+# Copyright (c) 2007 Zope Foundation 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.
+#
+##############################################################################
+"""Setup
+
+$Id:$
+"""
+import os
+from setuptools import setup, find_packages
+
+def read(*rnames):
+ return open(os.path.join(os.path.dirname(__file__), *rnames)).read()
+
+setup (
+ name='z3c.language.session',
+ version='1.0.0',
+ author = "Roger Ineichen and the Zope Community",
+ author_email = "zope3-dev at zope.org",
+ description = "Zope3 i18n language session.",
+ long_description=(
+ read('README.txt')
+ + '\n\n' +
+ read('CHANGES.txt')
+ ),
+ license = "ZPL 2.1",
+ keywords = "zope3 z3c i18n language session",
+ classifiers = [
+ 'Development Status :: 5 - Production/Stable',
+ 'Environment :: Web Environment',
+ 'Intended Audience :: Developers',
+ 'License :: OSI Approved :: Zope Public License',
+ 'Programming Language :: Python',
+ 'Natural Language :: English',
+ 'Operating System :: OS Independent',
+ 'Topic :: Internet :: WWW/HTTP',
+ 'Framework :: Zope3'],
+ url = 'http://cheeseshop.python.org/pypi/z3c.language.session',
+ packages = find_packages('src'),
+ include_package_data = True,
+ package_dir = {'':'src'},
+ namespace_packages = ['z3c', 'z3c.language'],
+ extras_require = dict(
+ test = [
+ 'zope.app.testing',
+ 'zope.testing',
+ 'z3c.coverage',
+ ],
+ ),
+ install_requires = [
+ 'setuptools',
+ 'zope.session',
+ 'zope.component',
+ 'zope.interface',
+ 'zope.publisher',
+ 'z3c.i18n',
+ ],
+ dependency_links = ['http://download.zope.org/distribution'],
+ zip_safe = False,
+ )
Property changes on: z3c.language.session/trunk/setup.py
___________________________________________________________________
Name: svn:eol-style
+ native
Property changes on: z3c.language.session/trunk/src
___________________________________________________________________
Name: svn:ignore
+ z3c.language.session.egg-info
Copied: z3c.language.session/trunk/src/z3c/language/session (from rev 81870, z3c.language/trunk/src/z3c/language/session)
Added: z3c.language.session/trunk/src/z3c/language/session/README.txt
===================================================================
--- z3c.language.session/trunk/src/z3c/language/session/README.txt (rev 0)
+++ z3c.language.session/trunk/src/z3c/language/session/README.txt 2007-11-16 02:52:00 UTC (rev 81872)
@@ -0,0 +1,51 @@
+======
+README
+======
+
+The package provides a simple access to a session for store a language.
+
+ >>> from zope.session.interfaces import ISession
+ >>> from zope.session.session import PersistentSessionDataContainer
+ >>> from zope.session import tests
+ >>> from z3c.language.session import interfaces
+ >>> from z3c.language.session import app
+
+We have to setup a session data container and create a test request:
+
+ >>> request = tests.setUp(PersistentSessionDataContainer)
+
+We can simply create a session with the request as attribute:
+
+ >>> langSession = app.LanguageSession(request)
+
+Such a session provides ILanguageSession:
+
+ >>> interfaces.ILanguageSession.providedBy(langSession)
+ True
+
+And the base ISession interface:
+
+ >>> ISession.providedBy(langSession)
+ True
+
+
+getLanguage
+-----------
+
+We can check if there is a language set in the session with getLanguage. If no
+language is set, it should be None:
+
+ >>> langSession.getLanguage()
+
+
+setLanguage
+-----------
+
+The session provides setLanguage which can set a language:
+
+ >>> langSession.setLanguage('de')
+
+Now we should get the new language stored in the session:
+
+ >>> langSession.getLanguage()
+ 'de'
Property changes on: z3c.language.session/trunk/src/z3c/language/session/README.txt
___________________________________________________________________
Name: svn:eol-style
+ native
Modified: z3c.language.session/trunk/src/z3c/language/session/app.py
===================================================================
--- z3c.language/trunk/src/z3c/language/session/app.py 2007-11-16 02:09:47 UTC (rev 81870)
+++ z3c.language.session/trunk/src/z3c/language/session/app.py 2007-11-16 02:52:00 UTC (rev 81872)
@@ -19,7 +19,7 @@
import zope.interface
-from zope.app.session.session import Session
+from zope.session.session import Session
from z3c.language.session import ILanguageSession
from z3c.language.session import IGetLanguage
@@ -28,37 +28,8 @@
class LanguageSession(Session):
- """Handles i18n language via server session.
+ """Can get and set a language in session."""
- >>> from zope.app.session.interfaces import ISession
- >>> from zope.app.session.session import PersistentSessionDataContainer
- >>> from zope.app.session import tests
- >>> request = tests.setUp(PersistentSessionDataContainer)
- >>> request2 = tests.HTTPRequest(None, {}, None)
-
- >>> ILanguageSession.providedBy(LanguageSession(request))
- True
-
- >>> ISession.providedBy(LanguageSession(request))
- True
-
- Setup a language sessions:
-
- >>> sessionLanguage = LanguageSession(request)
-
- Test getLanguage, if no language is set, it should be None:
-
- >>> sessionLanguage.getLanguage()
-
- Test setLanguage:
-
- >>> sessionLanguage.setLanguage('de')
- >>> sessionLanguage.getLanguage()
- 'de'
-
- >>> tests.tearDown()
-
- """
zope.interface.implements(ILanguageSession, IGetLanguage, ISetLanguage)
def __init__(self, request):
Modified: z3c.language.session/trunk/src/z3c/language/session/interfaces.py
===================================================================
--- z3c.language/trunk/src/z3c/language/session/interfaces.py 2007-11-16 02:09:47 UTC (rev 81870)
+++ z3c.language.session/trunk/src/z3c/language/session/interfaces.py 2007-11-16 02:52:00 UTC (rev 81872)
@@ -19,9 +19,8 @@
import zope.interface
from zope.schema.interfaces import IVocabularyTokenized
+from zope.session.interfaces import ISession
-from zope.app.session.interfaces import ISession
-
from z3c.i18n import MessageFactory as _
sessionPkgDataId = 'z3c.language.session.SessionDataContainer'
Modified: z3c.language.session/trunk/src/z3c/language/session/tests.py
===================================================================
--- z3c.language/trunk/src/z3c/language/session/tests.py 2007-11-16 02:09:47 UTC (rev 81870)
+++ z3c.language.session/trunk/src/z3c/language/session/tests.py 2007-11-16 02:52:00 UTC (rev 81872)
@@ -17,15 +17,17 @@
"""
__docformat__ = 'restructuredtext'
+import doctest
import unittest
+from zope.testing.doctestunit import DocFileSuite
-from zope.testing.doctestunit import DocTestSuite
-
def test_suite():
return unittest.TestSuite((
- DocTestSuite('z3c.language.session.app'),
+ DocFileSuite('README.txt',
+ optionflags=doctest.NORMALIZE_WHITESPACE|doctest.ELLIPSIS,),
))
-if __name__=='__main__':
+
+if __name__ == '__main__':
unittest.main(defaultTest='test_suite')
More information about the Checkins
mailing list