]> git.decadent.org.uk Git - dak.git/blobdiff - tests/test_parse_changes.py
Merge branch 'master' of ssh://ftp-master.debian.org/srv/ftp.debian.org/git/dak
[dak.git] / tests / test_parse_changes.py
index 38f653d006256bc612c9d86b7d0a3e3eaaae35b2..85a76948d193c5f4a8f4615eb71aa1fdc011236f 100755 (executable)
@@ -10,7 +10,7 @@ from daklib.dak_exceptions import InvalidDscError, ParseChangesError
 
 class ParseChangesTestCase(DakTestCase):
     def assertParse(self, filename, *args):
-        return parse_changes(fixture(filename), *args, keyrings=())
+        return parse_changes(fixture(filename), *args)
 
     def assertFails(self, filename, line=None, *args):
         try:
@@ -26,43 +26,43 @@ class ParseChangesTestCase(DakTestCase):
 
 class ParseDscTestCase(ParseChangesTestCase):
     def test_1(self):
-        self.assertParse('dsc/1.dsc', 0, 1)
+        self.assertParse('dsc/1.dsc', -1, 1)
 
     def test_1_ignoreErrors(self):
         # Valid .dsc ; ignoring errors
-        self.assertParse('dsc/1.dsc', 0, 1)
+        self.assertParse('dsc/1.dsc', -1, 1)
 
     def test_2(self):
         # Missing blank line before signature body
-        self.assertParse('dsc/2.dsc', 0, 1)
+        self.assertParse('dsc/2.dsc', -1, 1)
 
     def test_2_ignoreErrors(self):
         # Invalid .dsc ; ignoring errors
-        self.assertParse('dsc/2.dsc', 0, 1)
+        self.assertParse('dsc/2.dsc', -1, 1)
 
     def test_3(self):
         # Missing blank line after signature header
-        self.assertParse('dsc/3.dsc', 0, 1)
+        self.assertParse('dsc/3.dsc', -1, 1)
 
     def test_4(self):
         # No blank lines at all
-        self.assertFails('dsc/4.dsc', 0, 1)
+        self.assertFails('dsc/4.dsc', -1, 1)
 
     def test_5(self):
         # Extra blank line before signature body
-        self.assertParse('dsc/5.dsc', 0, 1)
+        self.assertParse('dsc/5.dsc', -1, 1)
 
     def test_6(self):
         # Extra blank line after signature header
-        self.assertParse('dsc/6.dsc', 0, 1)
+        self.assertParse('dsc/6.dsc', -1, 1)
 
 class ParseChangesTestCase(ParseChangesTestCase):
     def test_1(self):
         # Empty changes
-        self.assertFails('changes/1.changes', line=5)
+        self.assertFails('changes/1.changes', 5, -1)
 
     def test_2(self):
-        changes = self.assertParse('changes/2.changes', 0)
+        changes = self.assertParse('changes/2.changes', -1)
 
         binaries = changes['binary']
 
@@ -70,12 +70,17 @@ class ParseChangesTestCase(ParseChangesTestCase):
 
     def test_3(self):
         for filename in ('valid', 'bogus-pre', 'bogus-post'):
-            for strict_whitespace in (0, 1):
+            for strict_whitespace in (-1,):
                 changes = self.assertParse(
                     'changes/%s.changes' % filename,
                     strict_whitespace,
                 )
                 self.failIf(changes.get('you'))
 
+    def test_4(self):
+        changes = self.assertParse('changes/two-beginnings.changes', -1, 1)
+        self.assert_(changes['question'] == 'Is this a bug?')
+        self.failIf(changes.get('this'))
+
 if __name__ == '__main__':
     unittest.main()