]> git.decadent.org.uk Git - dak.git/blobdiff - tests/test_srcformats.py
Split parsing of "Format:" string and validation of it.
[dak.git] / tests / test_srcformats.py
index 834a30b4fedf7c716b7fff9e90f9a96cde186d5d..9c62d831bdb8a46b609e826848472fca584004f1 100755 (executable)
@@ -107,16 +107,16 @@ class FormatTreeQuiltTestCase(SourceFormatTestCase):
 
 class ParseFormat(unittest.TestCase):
     def assertFormat(self, input, expected, **kwargs):
-        self.assertEqual(
-            srcformats.SourceFormat.parse_format(input, **kwargs),
-            expected,
-        )
+        format = srcformats.SourceFormat.parse_format(input)
+        self.assertEqual(format, expected)
+        srcformats.SourceFormat.validate_format(format, **kwargs)
 
     def assertInvalidFormat(self, input, **kwargs):
-        self.assertRaises(
-            UnknownFormatError,
-            lambda: srcformats.SourceFormat.parse_format(input, **kwargs),
-        )
+        try:
+            format = srcformats.SourceFormat.parse_format(input)
+            srcformats.SourceFormat.validate_format(format, **kwargs)
+        except UnknownFormatError:
+            return
 
     def testEmpty(self):
         self.assertInvalidFormat('')
@@ -141,7 +141,7 @@ class ParseSourceFormat(ParseFormat):
         self.assertFormat('1.0', (1, 0))
 
     def testZero(self):
-        self.assertFormat('0.0', (0, 0))
+        self.assertInvalidFormat('0.0')
 
     def testNative(self):
         self.assertFormat('3.0 (native)', (3, 0, 'native'))