[Checkins] SVN: grokproject/trunk/tests Rename tests_paste to tests

Jan-Jaap Driessen jdriessen at thehealthagency.com
Wed Feb 2 06:19:46 EST 2011


Log message for revision 120045:
  Rename tests_paste to tests

Changed:
  U   grokproject/trunk/tests.py
  A   grokproject/trunk/tests.txt
  D   grokproject/trunk/tests_paste.txt

-=-
Modified: grokproject/trunk/tests.py
===================================================================
--- grokproject/trunk/tests.py	2011-02-02 11:17:33 UTC (rev 120044)
+++ grokproject/trunk/tests.py	2011-02-02 11:19:45 UTC (rev 120045)
@@ -121,7 +121,7 @@
     suite = []
     suite.append(
         doctest.DocFileSuite(
-            'tests_paste.txt',
+            'tests.txt',
             optionflags=doctest.ELLIPSIS | doctest.NORMALIZE_WHITESPACE,
             globs=globs,
             setUp=setup,

Copied: grokproject/trunk/tests.txt (from rev 120044, grokproject/trunk/tests_paste.txt)
===================================================================
--- grokproject/trunk/tests.txt	                        (rev 0)
+++ grokproject/trunk/tests.txt	2011-02-02 11:19:45 UTC (rev 120045)
@@ -0,0 +1,324 @@
+Grokproject tests
+=================
+
+Go to a fresh test directory:
+
+    >>> cd(testdir)
+
+Eggs are placed in our freshly created eggs directory:
+
+    >>> import os.path
+    >>> # Use a specific grok version, because 'current' will change at some
+    >>> # point in the future.
+    >>> executable = [os.path.join(current_dir, 'bin', 'grokproject')]
+    >>> opts = ['--user=a', '--passwd=a', '--eggs-dir=' + eggsdir]
+    >>> opts += ['--version-url=http://grok.zope.org/releaseinfo/1.3/versions.cfg']
+    >>> sh(executable + opts + ['GrokExample'])
+    ['...grokproject',
+     '--user=a',
+     '--passwd=a',
+     '--eggs-dir=...grokproject-test-eggs',
+     '--version-url=http://grok.zope.org/releaseinfo/1.3/versions.cfg',
+     'GrokExample']...
+    Creating directory '...bin'.
+    Creating directory '...parts'.
+    Creating directory '...develop-eggs'.
+    ...
+    Develop: '...GrokExample...'
+    ...
+    Generated script '...paster'.
+    Generated interpreter '...python-console'.
+    Installing daemon.
+    Generated script '...daemon'.
+    Installing paster_ini_debug.
+    Installing paster_ini_deploy.
+    Installing i18n.
+    i18n: setting up i18n tools
+    Generated script '...i18nextract'.
+    Generated script '...i18nmergeall'.
+    Generated script '...i18nstats'.
+    Generated script '...i18ncompile'.
+    Installing mkdirs.
+    mkdirs: created path: ...var
+    mkdirs: created path: ...filestorage
+    mkdirs: created path: ...log
+    mkdirs: created path: ...blobstorage
+    Installing site_zcml.
+    Installing test.
+    Generated script '...test'.
+    Installing zope_conf_debug.
+    ...
+    Installing zope_conf_deploy.
+    ...
+    Installing zpasswd.
+    Generated script '...zpasswd'.
+    Installing interactive_debugger.
+    Generated script '...interactive_debugger'.
+    Installing data.
+    Installing log.
+    *************** PICKED VERSIONS ****************
+    [versions]
+    <BLANKLINE>
+    *************** /PICKED VERSIONS ***************
+    Creating directory ...GrokExample
+    Running ...bootstrap.py...
+    Running ...buildout...
+    <BLANKLINE>
+
+Let's check the contents:
+
+    >>> package_dir = os.path.join(testdir, 'GrokExample')
+    >>> print open(os.path.join(package_dir, 'buildout.cfg')).read()
+    [buildout]
+    extends = http://grok.zope.org/releaseinfo/1.3/versions.cfg
+    extends-cache = extends-cache
+    include-site-packages = false
+    develop = .
+    ...
+
+    >>> ls(package_dir)
+    .installed.cfg
+    bin
+    bootstrap.py
+    buildout.cfg
+    develop-eggs
+    etc
+    extends-cache
+    log
+    parts
+    setup.py
+    src
+    var
+
+    >>> software_dir = os.path.join(package_dir, 'src', 'grokexample')
+    >>> ls(software_dir)
+    __init__.py
+    app.py
+    app_templates
+    configure.zcml
+    resource.py
+    static
+    tests
+
+    >>> bin_dir = os.path.join(package_dir, 'bin')
+    >>> ls(bin_dir)
+    buildout
+    daemon
+    i18ncompile
+    i18nextract
+    i18nmergeall
+    i18nstats
+    interactive_debugger
+    paster
+    python-console
+    test
+    zpasswd
+
+    >>> etc_dir = os.path.join(package_dir, 'parts', 'etc')
+    >>> ls(etc_dir)
+    debug.ini
+    deploy.ini
+    site.zcml
+    zope.debug.conf
+    zope.deploy.conf
+
+In the generated configuration files paths are set to local paths.
+We used a projectname with uppercase letters. This is respected by
+configuration files:
+
+    >>> cat(etc_dir, 'zope.debug.conf')
+    # Identify the component configuration used to define the site:
+    site-definition .../GrokExample/parts/etc/site.zcml
+    ...
+
+The eggs dir is filled now:
+
+    >>> len(os.listdir(eggsdir)) > 100
+    True
+
+The extends-cache directive results in cached versions of the referenced
+buildout files to support offline building. We know what the filename of the
+cached versions file for 1.3 will look like:
+
+    >>> ls(os.path.join(package_dir, 'extends-cache'))
+    0e528124e9df4d3fad02dfc68147586e
+    354ba68f51f74190b8bfdc3d2686b6fb
+    b88291ed0762c9dcbc55c7a7c7176bb1
+
+The password given is stored SSHA encoded:
+
+    >>> site_zcml_in = os.path.join(package_dir, 'etc',
+    ...                             'site.zcml.in')
+    >>> print open(site_zcml_in, 'rb').read()
+    <configure xmlns="http://namespaces.zope.org/zope"
+    ...
+        <principal id="zope.manager"
+                   title="Manager"
+                   login="a"
+                   password_manager="SSHA"
+                   password="{SSHA}..."
+                   />
+    ...
+
+
+Using i18n scripts
+------------------
+
+We can create a POT file out of our sources using the freshly
+generated `i18nextract`:
+
+    >>> cmd = os.path.join(bin_dir, 'i18nextract')
+    >>> output = read_sh(cmd)
+    >>> print output
+    domain:...'grokexample'
+    ...
+    output: '...grokexample.pot'
+
+The .pot file contains no specific entries right now. So let's add a
+source file with translatable content:
+
+    >>> source = """
+    ... from zope.i18nmessageid import MessageFactory
+    ... _ = MessageFactory('grokexample')
+    ...
+    ... class SomeClassWithI18nableContent(object):
+    ...   title = _(u'mytitle')
+    ...   description = _(u'description')
+    ...   name = _(u'name')
+    ... """
+    >>> source_path = os.path.join(software_dir, 'translatable.py')
+    >>> open(source_path, 'w').write(source)
+
+And rerun `bin/i18nextract`:
+
+    >>> cmd = os.path.join(bin_dir, 'i18nextract')
+    >>> output = read_sh(cmd)
+
+The translatable strings now appear in the generated .pot file:
+
+    >>> pot_file = os.path.join(software_dir, 'locales', 'grokexample.pot')
+    >>> print open(pot_file, 'r').read()
+    ####...
+    #: grokexample/translatable.py:6
+    msgid "mytitle"
+    msgstr ""
+    <BLANKLINE>
+    #: grokexample/translatable.py:7
+    msgid "description"
+    msgstr ""
+    <BLANKLINE>
+    #: grokexample/translatable.py:8
+    msgid "name"
+    msgstr ""
+
+Let's now create a translation for that (tiny) set of messages:
+
+    >>> trans_dir_de = os.path.join(software_dir, 'locales', 'de',
+    ...                            'LC_MESSAGES')
+    >>> os.makedirs(trans_dir_de)
+
+In this directory we create a copy of the original .pot file:
+
+    >>> po_file_path = os.path.join(trans_dir_de, 'grokexample.po')
+    >>> po_file = open(pot_file, 'r').read()
+
+We modify the translation to give some more interesting results:
+
+    >>> po_file = po_file.replace('translatable.py:7\n',
+    ...                           'translatable.py:7\n#, fuzzy\n')
+    >>> po_file = po_file.replace('"mytitle"\nmsgstr ""',
+    ...                           '"mytitle"\nmsgstr "Mein Titel"')
+    >>> po_file = po_file.replace('"name"\nmsgstr ""',
+    ...                           '"name"\nmsgstr "Name"')
+    >>> open(po_file_path, 'wb').write(po_file)
+
+We can merge all translations with bin/i18nmergeall:
+
+    >>> cmd = os.path.join(bin_dir, 'i18nmergeall')
+    >>> output = read_sh(cmd).split('\n')
+    >>> print output[1]
+    Merging language "de", domain "grokexample"
+
+We can see the status of translations calling bin/i18nstats:
+
+    >>> cmd = os.path.join(bin_dir, 'i18nstats')
+    >>> output = read_sh(cmd)
+    >>> print output
+    Language    Total    Done    Not Done    Fuzzy      Done %
+    ==========================================================
+    de              3       1           1        1     33.33 %
+
+
+Using the generated `test` script
+---------------------------------
+
+We can run tests:
+
+    >>> cmd = os.path.join(bin_dir, 'test')
+    >>> output = read_sh(cmd)
+    >>> print 'Test:\n' + output
+    Test:
+    Running tests at level 1
+    Running grokexample.tests.ZopeFanstaticBrowserLayer tests:
+      Set up grokexample.tests.ZopeFanstaticBrowserLayer... in ... seconds.
+      Running:
+    ..
+      Ran 2 tests with 0 failures and 0 errors in ... seconds.
+    Running zope.testrunner.layer.UnitTests tests:
+      Tear down grokexample.tests.ZopeFanstaticBrowserLayer in ... seconds.
+      Set up zope.testrunner.layer.UnitTests in ... seconds.
+      Running:
+    .
+      Ran 1 tests with 0 failures and 0 errors in ... seconds.
+    Tearing down left over layers:
+      Tear down zope.testrunner.layer.UnitTests in ... seconds.
+    Total: 3 tests, 0 failures, 0 errors in ... seconds.
+    <BLANKLINE>
+
+Using the generated `buildout` script
+-------------------------------------
+
+We can call the `buildout` script of the freshly generated
+project. For this to work, we have to switch to the project directory
+first:
+
+    >>> cd(package_dir)
+    >>> cmd = os.path.join(bin_dir, 'buildout')
+    >>> output = read_sh(cmd)
+    >>> print output
+    Develop: ...
+    Updating app.
+    Updating daemon.
+    Updating paster_ini_debug.
+    Updating paster_ini_deploy.
+    Updating i18n.
+    i18n: setting up i18n tools
+    Updating mkdirs.
+    Updating site_zcml.
+    Updating test.
+    Updating zope_conf_debug.
+    Updating zope_conf_deploy.
+    Updating zpasswd.
+    Updating interactive_debugger.
+    Updating data.
+    Updating log.
+    *************** PICKED VERSIONS ****************
+    [versions]
+    <BLANKLINE>
+    *************** /PICKED VERSIONS ***************
+    <BLANKLINE>
+
+Invalid project names
+---------------------
+
+We check for invalid project names:
+
+    >>> sh(executable + opts + ['360profile'])
+    [...]
+    Error: The chosen project name is not a valid package name: 360profile.
+    Please choose a different project name.
+
+    >>> sh(executable + opts + ['profile'])
+    [...]
+    Error: The package 'profile' is already on sys.path.
+    Please choose a different project name.

Deleted: grokproject/trunk/tests_paste.txt
===================================================================
--- grokproject/trunk/tests_paste.txt	2011-02-02 11:17:33 UTC (rev 120044)
+++ grokproject/trunk/tests_paste.txt	2011-02-02 11:19:45 UTC (rev 120045)
@@ -1,324 +0,0 @@
-Grokproject tests
-=================
-
-Go to a fresh test directory:
-
-    >>> cd(testdir)
-
-Eggs are placed in our freshly created eggs directory:
-
-    >>> import os.path
-    >>> # Use a specific grok version, because 'current' will change at some
-    >>> # point in the future.
-    >>> executable = [os.path.join(current_dir, 'bin', 'grokproject')]
-    >>> opts = ['--user=a', '--passwd=a', '--eggs-dir=' + eggsdir]
-    >>> opts += ['--version-url=http://grok.zope.org/releaseinfo/1.3/versions.cfg']
-    >>> sh(executable + opts + ['GrokExample'])
-    ['...grokproject',
-     '--user=a',
-     '--passwd=a',
-     '--eggs-dir=...grokproject-test-eggs',
-     '--version-url=http://grok.zope.org/releaseinfo/1.3/versions.cfg',
-     'GrokExample']...
-    Creating directory '...bin'.
-    Creating directory '...parts'.
-    Creating directory '...develop-eggs'.
-    ...
-    Develop: '...GrokExample...'
-    ...
-    Generated script '...paster'.
-    Generated interpreter '...python-console'.
-    Installing daemon.
-    Generated script '...daemon'.
-    Installing paster_ini_debug.
-    Installing paster_ini_deploy.
-    Installing i18n.
-    i18n: setting up i18n tools
-    Generated script '...i18nextract'.
-    Generated script '...i18nmergeall'.
-    Generated script '...i18nstats'.
-    Generated script '...i18ncompile'.
-    Installing mkdirs.
-    mkdirs: created path: ...var
-    mkdirs: created path: ...filestorage
-    mkdirs: created path: ...log
-    mkdirs: created path: ...blobstorage
-    Installing site_zcml.
-    Installing test.
-    Generated script '...test'.
-    Installing zope_conf_debug.
-    ...
-    Installing zope_conf_deploy.
-    ...
-    Installing zpasswd.
-    Generated script '...zpasswd'.
-    Installing interactive_debugger.
-    Generated script '...interactive_debugger'.
-    Installing data.
-    Installing log.
-    *************** PICKED VERSIONS ****************
-    [versions]
-    <BLANKLINE>
-    *************** /PICKED VERSIONS ***************
-    Creating directory ...GrokExample
-    Running ...bootstrap.py...
-    Running ...buildout...
-    <BLANKLINE>
-
-Let's check the contents:
-
-    >>> package_dir = os.path.join(testdir, 'GrokExample')
-    >>> print open(os.path.join(package_dir, 'buildout.cfg')).read()
-    [buildout]
-    extends = http://grok.zope.org/releaseinfo/1.3/versions.cfg
-    extends-cache = extends-cache
-    include-site-packages = false
-    develop = .
-    ...
-
-    >>> ls(package_dir)
-    .installed.cfg
-    bin
-    bootstrap.py
-    buildout.cfg
-    develop-eggs
-    etc
-    extends-cache
-    log
-    parts
-    setup.py
-    src
-    var
-
-    >>> software_dir = os.path.join(package_dir, 'src', 'grokexample')
-    >>> ls(software_dir)
-    __init__.py
-    app.py
-    app_templates
-    configure.zcml
-    resource.py
-    static
-    tests
-
-    >>> bin_dir = os.path.join(package_dir, 'bin')
-    >>> ls(bin_dir)
-    buildout
-    daemon
-    i18ncompile
-    i18nextract
-    i18nmergeall
-    i18nstats
-    interactive_debugger
-    paster
-    python-console
-    test
-    zpasswd
-
-    >>> etc_dir = os.path.join(package_dir, 'parts', 'etc')
-    >>> ls(etc_dir)
-    debug.ini
-    deploy.ini
-    site.zcml
-    zope.debug.conf
-    zope.deploy.conf
-
-In the generated configuration files paths are set to local paths.
-We used a projectname with uppercase letters. This is respected by
-configuration files:
-
-    >>> cat(etc_dir, 'zope.debug.conf')
-    # Identify the component configuration used to define the site:
-    site-definition .../GrokExample/parts/etc/site.zcml
-    ...
-
-The eggs dir is filled now:
-
-    >>> len(os.listdir(eggsdir)) > 100
-    True
-
-The extends-cache directive results in cached versions of the referenced
-buildout files to support offline building. We know what the filename of the
-cached versions file for 1.3 will look like:
-
-    >>> ls(os.path.join(package_dir, 'extends-cache'))
-    0e528124e9df4d3fad02dfc68147586e
-    354ba68f51f74190b8bfdc3d2686b6fb
-    b88291ed0762c9dcbc55c7a7c7176bb1
-
-The password given is stored SSHA encoded:
-
-    >>> site_zcml_in = os.path.join(package_dir, 'etc',
-    ...                             'site.zcml.in')
-    >>> print open(site_zcml_in, 'rb').read()
-    <configure xmlns="http://namespaces.zope.org/zope"
-    ...
-        <principal id="zope.manager"
-                   title="Manager"
-                   login="a"
-                   password_manager="SSHA"
-                   password="{SSHA}..."
-                   />
-    ...
-
-
-Using i18n scripts
-------------------
-
-We can create a POT file out of our sources using the freshly
-generated `i18nextract`:
-
-    >>> cmd = os.path.join(bin_dir, 'i18nextract')
-    >>> output = read_sh(cmd)
-    >>> print output
-    domain:...'grokexample'
-    ...
-    output: '...grokexample.pot'
-
-The .pot file contains no specific entries right now. So let's add a
-source file with translatable content:
-
-    >>> source = """
-    ... from zope.i18nmessageid import MessageFactory
-    ... _ = MessageFactory('grokexample')
-    ...
-    ... class SomeClassWithI18nableContent(object):
-    ...   title = _(u'mytitle')
-    ...   description = _(u'description')
-    ...   name = _(u'name')
-    ... """
-    >>> source_path = os.path.join(software_dir, 'translatable.py')
-    >>> open(source_path, 'w').write(source)
-
-And rerun `bin/i18nextract`:
-
-    >>> cmd = os.path.join(bin_dir, 'i18nextract')
-    >>> output = read_sh(cmd)
-
-The translatable strings now appear in the generated .pot file:
-
-    >>> pot_file = os.path.join(software_dir, 'locales', 'grokexample.pot')
-    >>> print open(pot_file, 'r').read()
-    ####...
-    #: grokexample/translatable.py:6
-    msgid "mytitle"
-    msgstr ""
-    <BLANKLINE>
-    #: grokexample/translatable.py:7
-    msgid "description"
-    msgstr ""
-    <BLANKLINE>
-    #: grokexample/translatable.py:8
-    msgid "name"
-    msgstr ""
-
-Let's now create a translation for that (tiny) set of messages:
-
-    >>> trans_dir_de = os.path.join(software_dir, 'locales', 'de',
-    ...                            'LC_MESSAGES')
-    >>> os.makedirs(trans_dir_de)
-
-In this directory we create a copy of the original .pot file:
-
-    >>> po_file_path = os.path.join(trans_dir_de, 'grokexample.po')
-    >>> po_file = open(pot_file, 'r').read()
-
-We modify the translation to give some more interesting results:
-
-    >>> po_file = po_file.replace('translatable.py:7\n',
-    ...                           'translatable.py:7\n#, fuzzy\n')
-    >>> po_file = po_file.replace('"mytitle"\nmsgstr ""',
-    ...                           '"mytitle"\nmsgstr "Mein Titel"')
-    >>> po_file = po_file.replace('"name"\nmsgstr ""',
-    ...                           '"name"\nmsgstr "Name"')
-    >>> open(po_file_path, 'wb').write(po_file)
-
-We can merge all translations with bin/i18nmergeall:
-
-    >>> cmd = os.path.join(bin_dir, 'i18nmergeall')
-    >>> output = read_sh(cmd).split('\n')
-    >>> print output[1]
-    Merging language "de", domain "grokexample"
-
-We can see the status of translations calling bin/i18nstats:
-
-    >>> cmd = os.path.join(bin_dir, 'i18nstats')
-    >>> output = read_sh(cmd)
-    >>> print output
-    Language    Total    Done    Not Done    Fuzzy      Done %
-    ==========================================================
-    de              3       1           1        1     33.33 %
-
-
-Using the generated `test` script
----------------------------------
-
-We can run tests:
-
-    >>> cmd = os.path.join(bin_dir, 'test')
-    >>> output = read_sh(cmd)
-    >>> print 'Test:\n' + output
-    Test:
-    Running tests at level 1
-    Running grokexample.tests.ZopeFanstaticBrowserLayer tests:
-      Set up grokexample.tests.ZopeFanstaticBrowserLayer... in ... seconds.
-      Running:
-    ..
-      Ran 2 tests with 0 failures and 0 errors in ... seconds.
-    Running zope.testrunner.layer.UnitTests tests:
-      Tear down grokexample.tests.ZopeFanstaticBrowserLayer in ... seconds.
-      Set up zope.testrunner.layer.UnitTests in ... seconds.
-      Running:
-    .
-      Ran 1 tests with 0 failures and 0 errors in ... seconds.
-    Tearing down left over layers:
-      Tear down zope.testrunner.layer.UnitTests in ... seconds.
-    Total: 3 tests, 0 failures, 0 errors in ... seconds.
-    <BLANKLINE>
-
-Using the generated `buildout` script
--------------------------------------
-
-We can call the `buildout` script of the freshly generated
-project. For this to work, we have to switch to the project directory
-first:
-
-    >>> cd(package_dir)
-    >>> cmd = os.path.join(bin_dir, 'buildout')
-    >>> output = read_sh(cmd)
-    >>> print output
-    Develop: ...
-    Updating app.
-    Updating daemon.
-    Updating paster_ini_debug.
-    Updating paster_ini_deploy.
-    Updating i18n.
-    i18n: setting up i18n tools
-    Updating mkdirs.
-    Updating site_zcml.
-    Updating test.
-    Updating zope_conf_debug.
-    Updating zope_conf_deploy.
-    Updating zpasswd.
-    Updating interactive_debugger.
-    Updating data.
-    Updating log.
-    *************** PICKED VERSIONS ****************
-    [versions]
-    <BLANKLINE>
-    *************** /PICKED VERSIONS ***************
-    <BLANKLINE>
-
-Invalid project names
----------------------
-
-We check for invalid project names:
-
-    >>> sh(executable + opts + ['360profile'])
-    [...]
-    Error: The chosen project name is not a valid package name: 360profile.
-    Please choose a different project name.
-
-    >>> sh(executable + opts + ['profile'])
-    [...]
-    Error: The package 'profile' is already on sys.path.
-    Please choose a different project name.



More information about the checkins mailing list