]> git.decadent.org.uk Git - dak.git/blob - tests/test_formats.py
Move parse_format tests to test_formats.py
[dak.git] / tests / test_formats.py
1 #!/usr/bin/env python
2
3 import unittest
4
5 import os, sys
6 sys.path.insert(0, os.path.dirname(os.path.dirname(os.path.abspath(__file__))))
7
8 from daklib.formats import parse_format
9 from daklib.dak_exceptions import UnknownFormatError
10
11 class ParseFormatTestCase(unittest.TestCase):
12     def assertParse(self, format, expected):
13         self.assertEqual(parse_format(format), expected)
14
15     def assertParseFail(self, format):
16         self.assertRaises(
17             UnknownFormatError,
18             lambda: parse_format(format)
19         )
20
21     def testParse(self):
22         self.assertParse('1.0', (1, 0))
23
24     def testEmpty(self):
25         self.assertParseFail('')
26         self.assertParseFail(' ')
27         self.assertParseFail('  ')
28
29     def textText(self):
30         self.assertParse('1.2 (three)', (1, 2, 'three'))
31         self.assertParseFail('0.0 ()')