[Python-checkins] distutils2: Added an instantiation test for the Distribution class.
tarek.ziade
python-checkins at python.org
Mon Apr 5 23:09:19 CEST 2010
tarek.ziade pushed a3691df563c3 to distutils2:
http://hg.python.org/distutils2/rev/a3691df563c3
changeset: 94:a3691df563c3
user: pumazi
date: Wed Mar 31 08:05:24 2010 -0400
summary: Added an instantiation test for the Distribution class.
files: src/distutils2/_backport/pkgutil.py, src/distutils2/_backport/tests/fake_dists/choxie-2009.dist-info/METADATA, src/distutils2/_backport/tests/test_pkgutil.py
diff --git a/src/distutils2/_backport/pkgutil.py b/src/distutils2/_backport/pkgutil.py
--- a/src/distutils2/_backport/pkgutil.py
+++ b/src/distutils2/_backport/pkgutil.py
@@ -608,6 +608,9 @@
def __init__(self, path):
self.path = path
+ metadata_path = os.path.join(path, 'METADATA')
+ self.metadata = DistributionMetadata(path=metadata_path)
+ self.name = self.metadata['name']
def get_installed_files(self, local=False):
"""
diff --git a/src/distutils2/_backport/tests/fake_dists/choxie-2009.dist-info/METADATA b/src/distutils2/_backport/tests/fake_dists/choxie-2009.dist-info/METADATA
--- a/src/distutils2/_backport/tests/fake_dists/choxie-2009.dist-info/METADATA
+++ b/src/distutils2/_backport/tests/fake_dists/choxie-2009.dist-info/METADATA
@@ -0,0 +1,6 @@
+Metadata-Version: 1.2
+Name: choxie
+Version: 2009
+Summary: Chocolate with a kick!
+Requires-Dist: towel-stuff (0.1)
+Provides-Dist: truffles (1.0)
diff --git a/src/distutils2/_backport/tests/test_pkgutil.py b/src/distutils2/_backport/tests/test_pkgutil.py
--- a/src/distutils2/_backport/tests/test_pkgutil.py
+++ b/src/distutils2/_backport/tests/test_pkgutil.py
@@ -8,7 +8,37 @@
import distutils2._backport.pkgutil
-class TestPkgUtil(unittest2.TestCase):
+
+class TestPkgUtilDistribution(unittest2.TestCase):
+ """Tests the pkgutil.Distribution class"""
+
+ # def setUp(self):
+ # super(TestPkgUtil, self).setUp()
+
+ # def tearDown(self):
+ # super(TestPkgUtil, self).tearDown()
+
+ def test_instantiation(self):
+ """Test the Distribution class's instantiation provides us with usable
+ attributes."""
+ # Import the Distribution class
+ from distutils2._backport.pkgutil import distinfo_dirname, Distribution
+
+ here = os.path.abspath(os.path.dirname(__file__))
+ name = 'choxie'
+ version = '2009'
+ dist_path = os.path.join(here, 'fake_dists',
+ distinfo_dirname(name, version))
+ dist = Distribution(dist_path)
+
+ self.assertEqual(dist.name, name)
+ from distutils2.metadata import DistributionMetadata
+ self.assertTrue(isinstance(dist.metadata, DistributionMetadata))
+ self.assertEqual(dist.metadata['version'], version)
+ self.assertTrue(isinstance(dist.requested, type(bool())))
+
+
+class TestPkgUtilFunctions(unittest2.TestCase):
"""Tests for the new functionality added in PEP 376."""
# def setUp(self):
@@ -71,7 +101,11 @@
def test_suite():
- return unittest2.makeSuite(TestPkgUtil)
+ suite = unittest2.TestSuite()
+ testcase_loader = unittest2.loader.defaultTestLoader.loadTestsFromTestCase
+ suite.addTest(testcase_loader(TestPkgUtilFunctions))
+ suite.addTest(testcase_loader(TestPkgUtilDistribution))
+ return suite
def test_main():
run_unittest(test_suite())
--
Repository URL: http://hg.python.org/distutils2
More information about the Python-checkins
mailing list