X-Git-Url: https://git.decadent.org.uk/gitweb/?a=blobdiff_plain;f=tests%2Ftest_srcformats.py;fp=tests%2Ftest_srcformats.py;h=f6d7215fc8daabcd179543ff59691263ccbb9d23;hb=68f805c214aa62ccd2e3624ebbc6f323eb8eb6dc;hp=d7b84496c86251b264aa93f7ee2c0201441fa743;hpb=fee8895dd909a9d0f4f4a71c83f689dabee62cfe;p=dak.git diff --git a/tests/test_srcformats.py b/tests/test_srcformats.py index d7b84496..f6d7215f 100755 --- a/tests/test_srcformats.py +++ b/tests/test_srcformats.py @@ -186,5 +186,27 @@ class ValidateFormatThreeQuiltTestCase(ValidateFormatTestCase): self.assertInvalid((0, 0)) self.assertInvalid((3, 0, 'native')) +class FormatFromStringTestCase(unittest.TestCase): + def assertFormat(self, txt, klass): + self.assertEqual(srcformats.get_format_from_string(txt), klass) + + def assertInvalid(self, txt): + self.assertRaises( + UnknownFormatError, + lambda: srcformats.get_format_from_string(txt), + ) + + def testFormats(self): + self.assertFormat('1.0', srcformats.FormatOne) + self.assertFormat('3.0 (native)', srcformats.FormatThree) + self.assertFormat('3.0 (quilt)', srcformats.FormatThreeQuilt) + + def testInvalidFormats(self): + self.assertInvalid('') + self.assertInvalid('.') + self.assertInvalid('3.0 (cvs)') + self.assertInvalid(' 1.0 ') + self.assertInvalid('8.4 (hardy)') + if __name__ == '__main__': unittest.main()