3 from base_test import DakTestCase
5 from daklib import regexes
7 class re_single_line_field(DakTestCase):
8 MATCH = regexes.re_single_line_field.match
11 self.assertEqual(self.MATCH('Foo: bar').groups(), ('Foo', 'bar'))
13 def testLeadingWhitespace(self):
14 self.assertEqual(self.MATCH(' Foo: bar'), None)
16 def testTrailingWhitespace(self):
17 self.assertEqual(self.MATCH('Foo: bar \n').groups(), ('Foo', 'bar '))
19 def testMiddleWhitespace(self):
20 self.assertEqual(self.MATCH('Foo: bar').groups(), ('Foo', 'bar'))
21 self.assertEqual(self.MATCH('Foo : bar').groups(), ('Foo', 'bar'))
22 self.assertEqual(self.MATCH('Foo \n:\n bar').groups(), ('Foo', 'bar'))
23 self.assertEqual(self.MATCH('Foo:bar').groups(), ('Foo', 'bar'))
26 self.assertEqual(self.MATCH('Foo: :').groups(), ('Foo', ':'))
27 self.assertEqual(self.MATCH('Foo: ::').groups(), ('Foo', '::'))
28 self.assertEqual(self.MATCH(': ::').groups(), ('', '::'))
29 self.assertEqual(self.MATCH('Foo::bar').groups(), ('Foo', ':bar'))
30 self.assertEqual(self.MATCH('Foo: :bar').groups(), ('Foo', ':bar'))
32 class re_parse_lintian(DakTestCase):
33 MATCH = regexes.re_parse_lintian.match
37 self.MATCH('W: pkgname: some-tag path/to/file').groups(),
38 ('W', 'pkgname', 'some-tag', 'path/to/file')
41 def testBinaryNoDescription(self):
43 self.MATCH('W: pkgname: some-tag').groups(),
44 ('W', 'pkgname', 'some-tag', '')
49 self.MATCH('W: pkgname source: some-tag').groups(),
50 ('W', 'pkgname source', 'some-tag', '')
53 def testSourceNoDescription(self):
55 self.MATCH('W: pkgname source: some-tag path/to/file').groups(),
56 ('W', 'pkgname source', 'some-tag', 'path/to/file')
59 if __name__ == '__main__':