[Python-checkins] python/nondist/sandbox/setuptools/setuptools/tests doctest.py, NONE, 1.1 __init__.py, 1.7, 1.8 test_resources.py, 1.15, 1.16
pje@users.sourceforge.net
pje at users.sourceforge.net
Mon Jul 18 03:39:48 CEST 2005
Update of /cvsroot/python/python/nondist/sandbox/setuptools/setuptools/tests
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv6719/setuptools/tests
Modified Files:
__init__.py test_resources.py
Added Files:
doctest.py
Log Message:
Massive API refactoring; see setuptools.txt changelog for details. Also,
add ``#egg=project-version`` link support, and docs on how to make your
package available for EasyInstall to find.
--- NEW FILE: doctest.py ---
# Module doctest.
# Released to the public domain 16-Jan-2001, by Tim Peters (tim at python.org).
# Major enhancements and refactoring by:
# Jim Fulton
# Edward Loper
# Provided as-is; use at your own risk; no warranty; no promises; enjoy!
try:
basestring
except NameError:
basestring = str,unicode
try:
enumerate
except NameError:
def enumerate(seq):
return zip(range(len(seq)),seq)
[...2638 lines suppressed...]
[0, 1, 2, ..., 999]
""",
"whitespace normalization": r"""
If the whitespace normalization flag is used, then
differences in whitespace are ignored.
>>> print range(30) #doctest: +NORMALIZE_WHITESPACE
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26,
27, 28, 29]
""",
}
def _test():
r = unittest.TextTestRunner()
r.run(DocTestSuite())
if __name__ == "__main__":
_test()
Index: __init__.py
===================================================================
RCS file: /cvsroot/python/python/nondist/sandbox/setuptools/setuptools/tests/__init__.py,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -d -r1.7 -r1.8
--- __init__.py 6 Jul 2005 01:54:08 -0000 1.7
+++ __init__.py 18 Jul 2005 01:39:45 -0000 1.8
@@ -408,8 +408,15 @@
+def test_api():
+ import doctest
+ return doctest.DocFileSuite(
+ 'api_tests.txt', optionflags=doctest.ELLIPSIS, package='pkg_resources',
+ )
+
+
testClasses = (DependsTests, DistroTests, FeatureTests, TestCommandTests)
-testNames = ["setuptools.tests.test_resources"]
+testNames = ["setuptools.tests.test_resources", "setuptools.tests.test_api"]
def test_suite():
return TestSuite(
@@ -442,10 +449,3 @@
-
-
-
-
-
-
-
Index: test_resources.py
===================================================================
RCS file: /cvsroot/python/python/nondist/sandbox/setuptools/setuptools/tests/test_resources.py,v
retrieving revision 1.15
retrieving revision 1.16
diff -u -d -r1.15 -r1.16
--- test_resources.py 17 Jul 2005 19:01:15 -0000 1.15
+++ test_resources.py 18 Jul 2005 01:39:45 -0000 1.16
@@ -54,23 +54,23 @@
[dist.version for dist in ad['FooPkg']], ['1.9','1.4','1.2']
)
- path = []
+ ws = WorkingSet([])
+ foo12 = Distribution.from_filename("FooPkg-1.2-py2.4.egg")
+ foo14 = Distribution.from_filename("FooPkg-1.4-py2.4-win32.egg")
req, = parse_requirements("FooPkg>=1.3")
# Nominal case: no distros on path, should yield all applicable
- self.assertEqual(ad.best_match(req,path).version, '1.9')
-
+ self.assertEqual(ad.best_match(req,ws).version, '1.9')
# If a matching distro is already installed, should return only that
- path.append("FooPkg-1.4-py2.4-win32.egg")
- self.assertEqual(ad.best_match(req,path).version, '1.4')
+ ws.add(foo14); self.assertEqual(ad.best_match(req,ws).version, '1.4')
# If the first matching distro is unsuitable, it's a version conflict
- path.insert(0,"FooPkg-1.2-py2.4.egg")
- self.assertRaises(VersionConflict, ad.best_match, req, path)
+ ws = WorkingSet([]); ws.add(foo12); ws.add(foo14)
+ self.assertRaises(VersionConflict, ad.best_match, req, ws)
# If more than one match on the path, the first one takes precedence
- path.insert(0,"FooPkg-1.4-py2.4-win32.egg")
- self.assertEqual(ad.best_match(req,path).version, '1.4')
+ ws = WorkingSet([]); ws.add(foo14); ws.add(foo12); ws.add(foo14);
+ self.assertEqual(ad.best_match(req,ws).version, '1.4')
def checkFooPkg(self,d):
self.assertEqual(d.project_name, "FooPkg")
@@ -86,8 +86,6 @@
project_name="FooPkg",version="1.3-1",py_version="2.4",platform="win32"
)
self.checkFooPkg(d)
- self.failUnless(d.installed_on(["/some/path"]))
- self.failIf(d.installed_on([]))
d = Distribution("/some/path")
self.assertEqual(d.py_version, sys.version[:3])
@@ -121,15 +119,17 @@
self.checkDepends(self.distDepends(v), v)
+
+
def testResolve(self):
- ad = AvailableDistributions([])
+ ad = AvailableDistributions([]); ws = WorkingSet([])
# Resolving no requirements -> nothing to install
- self.assertEqual( list(ad.resolve([],[])), [] )
+ self.assertEqual( list(ws.resolve([],ad)), [] )
# Request something not in the collection -> DistributionNotFound
self.assertRaises(
- DistributionNotFound, ad.resolve, parse_requirements("Foo"), []
+ DistributionNotFound, ws.resolve, parse_requirements("Foo"), ad
)
Foo = Distribution.from_filename(
@@ -138,28 +138,28 @@
)
ad.add(Foo)
- # Request thing(s) that are available -> list to install
+ # Request thing(s) that are available -> list to activate
self.assertEqual(
- list(ad.resolve(parse_requirements("Foo"),[])), [Foo]
+ list(ws.resolve(parse_requirements("Foo"), ad)), [Foo]
)
- # Request an option that causes an unresolved dependency for "Baz"
+ # Request an extra that causes an unresolved dependency for "Baz"
self.assertRaises(
- DistributionNotFound, ad.resolve,parse_requirements("Foo[bar]"),[]
+ DistributionNotFound, ws.resolve,parse_requirements("Foo[bar]"), ad
)
Baz = Distribution.from_filename(
"/foo_dir/Baz-2.1.egg", metadata=Metadata(('depends.txt', "Foo"))
)
ad.add(Baz)
- # Install list now includes resolved dependency
+ # Activation list now includes resolved dependency
self.assertEqual(
- list(ad.resolve(parse_requirements("Foo[bar]"),[])), [Foo,Baz]
+ list(ws.resolve(parse_requirements("Foo[bar]"), ad)), [Foo,Baz]
)
# Requests for conflicting versions produce VersionConflict
self.assertRaises(
VersionConflict,
- ad.resolve, parse_requirements("Foo==1.2\nFoo!=1.2"), []
+ ws.resolve, parse_requirements("Foo==1.2\nFoo!=1.2"), ad
)
def testDistroDependsOptions(self):
@@ -208,7 +208,7 @@
def testBasics(self):
r = Requirement.parse("Twisted>=1.2")
self.assertEqual(str(r),"Twisted>=1.2")
- self.assertEqual(repr(r),"Requirement('Twisted', [('>=', '1.2')], ())")
+ self.assertEqual(repr(r),"Requirement.parse('Twisted>=1.2')")
self.assertEqual(r, Requirement("Twisted", [('>=','1.2')]))
self.assertEqual(r, Requirement("twisTed", [('>=','1.2')]))
self.assertNotEqual(r, Requirement("Twisted", [('>=','2.0')]))
@@ -285,13 +285,6 @@
-
-
-
-
-
-
-
class ParseTests(TestCase):
def testEmptyParse(self):
More information about the Python-checkins
mailing list