if has[key]:
yield "contains source files not allowed in format %s" % cls.name
- @classmethod
- def validate_format(cls, format, is_a_dsc=False, field='files'):
- """
- Raises UnknownFormatError if the specified format tuple is not valid for
- this format (for example, the format (1, 0) is not valid for the
- "3.0 (quilt)" format). Return value is undefined in all other cases.
- """
- pass
-
class FormatOne(SourceFormat):
__metaclass__ = SourceFormat
for msg in super(FormatOne, cls).reject_msgs(has):
yield msg
- @classmethod
- def validate_format(cls, format, is_a_dsc=False, field='files'):
- msg = "Invalid format %s definition: %r" % (cls.name, format)
-
- if is_a_dsc:
- if format != (1, 0):
- raise UnknownFormatError, msg
- else:
- if (format < (1,5) or format > (1,8)):
- raise UnknownFormatError, msg
- if field != "files" and format < (1,8):
- raise UnknownFormatError, msg
-
class FormatThree(SourceFormat):
__metaclass__ = SourceFormat
requires = ('native_tar',)
disallowed = ('orig_tar', 'debian_diff', 'debian_tar', 'more_orig_tar')
- @classmethod
- def validate_format(cls, format, **kwargs):
- if format != (3, 0, 'native'):
- raise UnknownFormatError, "Invalid format %s definition: %r" % \
- (cls.name, format)
-
class FormatThreeQuilt(SourceFormat):
__metaclass__ = SourceFormat
requires = ('orig_tar', 'debian_tar')
disallowed = ('debian_diff', 'native_tar')
-
- @classmethod
- def validate_format(cls, format, **kwargs):
- if format != (3, 0, 'quilt'):
- raise UnknownFormatError, "Invalid format %s definition: %r" % \
- (cls.name, format)
'native_tar': 1,
})
-##
-
-class ValidateFormatTestCase(unittest.TestCase):
- def assertValid(self, format, **kwargs):
- self.fmt.validate_format(format, **kwargs)
-
- def assertInvalid(self, *args, **kwargs):
- self.assertRaises(
- UnknownFormatError,
- lambda: self.assertValid(*args, **kwargs),
- )
-
-class ValidateFormatThreeTestCase(ValidateFormatTestCase):
- fmt = srcformats.FormatThree
-
- def testValid(self):
- self.assertValid((3, 0, 'native'))
-
- def testInvalid(self):
- self.assertInvalid((1, 0))
- self.assertInvalid((0, 0))
- self.assertInvalid((3, 0, 'quilt'))
-
-class ValidateFormatThreeQuiltTestCase(ValidateFormatTestCase):
- fmt = srcformats.FormatThreeQuilt
-
- def testValid(self):
- self.assertValid((3, 0, 'quilt'))
-
- def testInvalid(self):
- self.assertInvalid((1, 0))
- 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)