aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlec Warner <antarus@gentoo.org>2007-03-08 07:10:40 +0000
committerAlec Warner <antarus@gentoo.org>2007-03-08 07:10:40 +0000
commite61f3e1258dbbd74b5a85e4555b68ac8ff7e3908 (patch)
tree8c1034777b0214dc3e42566ba911703ed0a83b33 /pym/portage/tests/env
parentChange load() to have no default arguments, makes caller specifiy explicitly.... (diff)
downloadportage-e61f3e1258dbbd74b5a85e4555b68ac8ff7e3908.tar.gz
portage-e61f3e1258dbbd74b5a85e4555b68ac8ff7e3908.tar.bz2
portage-e61f3e1258dbbd74b5a85e4555b68ac8ff7e3908.zip
add PackageMask{File} classes, change unit tests to use try/finally, makes sure the tempfile gets destroyed even if something weird happens
svn path=/main/trunk/; revision=6193
Diffstat (limited to 'pym/portage/tests/env')
-rw-r--r--pym/portage/tests/env/config/test_PackageKeywordsFile.py14
-rw-r--r--pym/portage/tests/env/config/test_PackageMaskFile.py30
-rw-r--r--pym/portage/tests/env/config/test_PackageUseFile.py14
3 files changed, 46 insertions, 12 deletions
diff --git a/pym/portage/tests/env/config/test_PackageKeywordsFile.py b/pym/portage/tests/env/config/test_PackageKeywordsFile.py
index 6c5475881..1d72504b9 100644
--- a/pym/portage/tests/env/config/test_PackageKeywordsFile.py
+++ b/pym/portage/tests/env/config/test_PackageKeywordsFile.py
@@ -18,12 +18,14 @@ class PackageKeywordsFileTestCase(TestCase):
"""
self.BuildFile()
- f = PackageKeywordsFile(self.fname)
- f.load(recursive=False)
- for cpv, keyword in f.iteritems():
- self.assertEqual( cpv, self.cpv )
- [k for k in keyword if self.assertTrue(k in self.keywords)]
- self.NukeFile()
+ try:
+ f = PackageKeywordsFile(self.fname)
+ f.load(recursive=False)
+ for cpv, keyword in f.iteritems():
+ self.assertEqual( cpv, self.cpv )
+ [k for k in keyword if self.assertTrue(k in self.keywords)]
+ finally;
+ self.NukeFile()
def BuildFile(self):
f = open(self.fname, 'wb')
diff --git a/pym/portage/tests/env/config/test_PackageMaskFile.py b/pym/portage/tests/env/config/test_PackageMaskFile.py
new file mode 100644
index 000000000..f17eaf021
--- /dev/null
+++ b/pym/portage/tests/env/config/test_PackageMaskFile.py
@@ -0,0 +1,30 @@
+# test_PackageMaskFile.py -- Portage Unit Testing Functionality
+# Copyright 2007 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id: test_PackageMaskFile.py 6182 2007-03-06 07:35:22Z antarus $
+
+from portage.env.config import PackageMaskFile
+from portage.tests import TestCase
+
+class PackageMaskFileTestCase(TestCase):
+
+ fname = 'package.mask'
+ atoms = ['sys-apps/portage','dev-util/diffball','not@va1id@t0m']
+
+ def testPackageMaskLoad(self):
+ self.BuildFile()
+ try:
+ f = PackageMaskFile(self.fname)
+ f.load(recursive=False)
+ [atom for atom in f.iterkeys() if self.assertTrue(atom in self.atoms)]
+ finally:
+ self.NukeFile()
+
+ def BuildFile(self):
+ f = open(self.fname, 'wb')
+ f.write("\n".join(atoms))
+ f.close()
+
+ def NukeFile(self):
+ import os
+ os.unlink(self.fname)
diff --git a/pym/portage/tests/env/config/test_PackageUseFile.py b/pym/portage/tests/env/config/test_PackageUseFile.py
index 6dd76eeca..4638923df 100644
--- a/pym/portage/tests/env/config/test_PackageUseFile.py
+++ b/pym/portage/tests/env/config/test_PackageUseFile.py
@@ -17,12 +17,14 @@ class PackageUseFileTestCase(TestCase):
A simple test to ensure the load works properly
"""
self.BuildFile()
- f = PackageUseFile(self.fname)
- f.load(recursive=False)
- for cpv, use in f.iteritems():
- self.assertEqual( cpv, self.cpv )
- [flag for flag in use if self.assertTrue(flag in self.useflags)]
- self.NukeFile()
+ try:
+ f = PackageUseFile(self.fname)
+ f.load(recursive=False)
+ for cpv, use in f.iteritems():
+ self.assertEqual( cpv, self.cpv )
+ [flag for flag in use if self.assertTrue(flag in self.useflags)]
+ finally:
+ self.NukeFile()
def BuildFile(self):
f = open(self.fname, 'wb')