Skip to content

Commit

Permalink
set up (still empty) test suite; to do so we buildout is used, so tha…
Browse files Browse the repository at this point in the history
…t the zope testrunners can pick up the tests (which doesn't work with `python setup.py test`)
  • Loading branch information
witsch committed Jan 15, 2009
1 parent 71d3773 commit 1ee860e
Show file tree
Hide file tree
Showing 6 changed files with 103 additions and 12 deletions.
10 changes: 1 addition & 9 deletions README.txt
Original file line number Diff line number Diff line change
@@ -1,9 +1 @@
zope.globalrequest
==================

Introduction
------------

This package provides a global way to retrieve the currently active request
object in a zope-based web framework.

Please refer to src/zope/globalrequest/README.txt.
55 changes: 55 additions & 0 deletions bootstrap.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
##############################################################################
#
# Copyright (c) 2006 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: bootstrap.py 75593 2007-05-06 21:11:27Z jim $
"""

import os, shutil, sys, tempfile, urllib2

tmpeggs = tempfile.mkdtemp()

try:
import pkg_resources
except ImportError:
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)
13 changes: 13 additions & 0 deletions buildout.cfg
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
[buildout]
develop = .
parts = interpreter test

[interpreter]
recipe = zc.recipe.egg
eggs = zope.globalrequest
interpreter = python

[test]
recipe = zc.recipe.testrunner
eggs = zope.globalrequest [test]
defaults = ['-v']
10 changes: 7 additions & 3 deletions setup.py
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
from setuptools import setup, find_packages
from os.path import join

version = '1.0a1'
readme = open('README.txt').read()
readme = open(join('src', 'zope', 'globalrequest', 'README.txt')).read()
history = open('CHANGES.txt').read()

setup(name = 'zope.globalrequest',
Expand Down Expand Up @@ -33,7 +34,10 @@
install_requires = [
'setuptools',
],
tests_require = [
],
extras_require = dict(
test = [
'zope.testing',
],
),
entry_points = '',
)
13 changes: 13 additions & 0 deletions src/zope/globalrequest/README.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
zope.globalrequest
==================

Introduction
------------

This package provides a global way to retrieve the currently active request
object in a zope-based web framework.

Let's see if the test setup works:

>>> from zope import globalrequest

14 changes: 14 additions & 0 deletions src/zope/globalrequest/tests.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
from unittest import TestSuite
from zope.testing.doctest import DocFileSuite
from zope.testing.cleanup import cleanUp


def tearDown(test):
cleanUp()

def test_suite():
return TestSuite([
DocFileSuite('README.txt', package='zope.globalrequest',
tearDown=tearDown)
])

0 comments on commit 1ee860e

Please sign in to comment.