r188 - in branches/rewrite: src tests/PackageList

Nat Budin partial-mirror-devel@lists.alioth.debian.org
Thu, 22 Jul 2004 21:02:44 -0600


Author: natbudin-guest
Date: Thu Jul 22 21:02:44 2004
New Revision: 188

Modified:
   branches/rewrite/src/PackageList.py
   branches/rewrite/tests/PackageList/test.py
Log:
Added the two PackageList exceptions back in with somewhat better names.  Updated the test to reflect this change.


Modified: branches/rewrite/src/PackageList.py
==============================================================================
--- branches/rewrite/src/PackageList.py	(original)
+++ branches/rewrite/src/PackageList.py	Thu Jul 22 21:02:44 2004
@@ -16,6 +16,26 @@
 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
 # $Id$
 
+class PackageAlreadyExists(Exception):
+    """
+    Exception called when someone try to add a package but this was already included.
+    
+    Attributes:
+	package -- The name of package.
+    """
+    def __init__(self, package):
+	self.package = package
+	
+class PackageDoesNotExist(Exception):
+    """
+    Exception called when someone try to remove a package but this doesn't exist.
+
+    Attributes:
+        package -- The name of package.
+    """
+    def __init__(self, package):
+	self.package = package
+
 class PackageList:
     """
     This class is use to store a list of packages and provide ways to
@@ -32,7 +52,7 @@
 
     def add(self, package):
         if self._name.has_key(package['Package']):
-            raise NameError, package['Package'] + 'already included.'
+            raise PackageAlreadyExists, package['Package'] + 'already included.'
 
         if not self._subsection.has_key(package['Section']):
             self._subsection[package['Section']] = []
@@ -46,7 +66,7 @@
 
     def remove(self, package):
         if not self._name.has_key(package['Package']):
-            raise NameError, package['Package'] + 'do not exist.'
+            raise PackageDoesNotExist, package['Package'] + 'do not exist.'
 
         del self._name[package['Package']]
         self._subsection[package['Section']].remove(package)

Modified: branches/rewrite/tests/PackageList/test.py
==============================================================================
--- branches/rewrite/tests/PackageList/test.py	(original)
+++ branches/rewrite/tests/PackageList/test.py	Thu Jul 22 21:02:44 2004
@@ -40,11 +40,17 @@
         else:
             print("Failed. This doesn't found the expected error that should be [%s]."
                   % should)
-    except NameError, msg:
-        if should == 'NameError':
+    except PackageAlreadyExists, msg:
+        if should == 'PackageAlreadyExists':
             print "Works."
         else:
-            print("Failed. Got a NameError trying to work with [%s] package."
+            print("Failed. Package [%s] already exists."
+                  % (msg.package))
+    except PackageDoesNotExist, msg:
+        if should == 'PackageDoesNotExist':
+            print "Works."
+        else:
+            print("Failed. Package [%s] does not exist."
                   % (msg.package))
 
 def goodTest(packagelist):
@@ -57,5 +63,5 @@
         packagelist.add(Package(parse.Section))
 
 test('Good package test', goodTest, 'Packages')
-test('Package Already Exists', alreadyExistsTest, 'Packages', 'NameError')
+test('Package Already Exists', alreadyExistsTest, 'Packages', 'PackageAlreadyExists')