Esempio n. 1
0
 def test_valid(self):
     """
     Tests to check that missing and invalid metadata is caught.
     """
     md = Metadata()
     self.assertRaises(MetadataMissingError, md.validate)
     try:
         md.name = 'Foo Bar'
     except MetadataInvalidError:
         pass
     md.name = 'foo_bar'
     # Name now OK, but version and summary to be checked
     self.assertRaises(MetadataMissingError, md.validate)
     try:
         md.version = '1.0a'
     except MetadataInvalidError:
         pass
     md.version = '1.0'
     # Name and version now OK, but summary to be checked
     self.assertRaises(MetadataMissingError, md.validate)
     try:
         md.summary = ''
     except MetadataInvalidError:
         pass
     try:
         md.summary = ' ' * 2048
     except MetadataInvalidError:
         pass
     md.summary = ' ' * 2047
     md.validate()
     md.summary = ' '
     md.validate()
Esempio n. 2
0
 def test_valid(self):
     """
     Tests to check that missing and invalid metadata is caught.
     """
     md = Metadata()
     self.assertRaises(MetadataMissingError, md.validate)
     try:
         md.name = 'Foo Bar'
     except MetadataInvalidError:
         pass
     md.name = 'foo_bar'
     # Name now OK, but version and summary to be checked
     self.assertRaises(MetadataMissingError, md.validate)
     try:
         md.version = '1.0a'
     except MetadataInvalidError:
         pass
     md.version = '1.0'
     # Name and version now OK, but summary to be checked
     self.assertRaises(MetadataMissingError, md.validate)
     try:
         md.summary = ''
     except MetadataInvalidError:
         pass
     try:
         md.summary = ' ' * 2048
     except MetadataInvalidError:
         pass
     md.summary = ' ' * 2047
     md.validate()
     md.summary = ' '
     md.validate()
Esempio n. 3
0
    def test_init(self):
        "Test initialisation"
        md = Metadata()
        self.assertIsNone(md._legacy)
        self.assertRaises(MetadataMissingError, md.validate)
        md.name = 'dummy'
        self.assertRaises(MetadataMissingError, md.validate)
        md.version = '0.1'
        self.assertRaises(MetadataMissingError, md.validate)
        md.summary = 'Summary'
        md.validate()
        self.assertEqual(md.name, 'dummy')
        self.assertEqual(md.version, '0.1')

        # Initialise from mapping
        md = Metadata(
            mapping={
                'metadata_version': '2.0',
                'name': 'foo',
                'version': '0.3.4',
                'summary': 'Summary',
            })
        md.validate()
        self.assertEqual(md.name, 'foo')
        self.assertEqual(md.version, '0.3.4')
        self.assertEqual(md.run_requires, [])
        self.assertEqual(md.meta_requires, [])
        self.assertEqual(md.provides, ['foo (0.3.4)'])

        # Initialise from legacy metadata
        fn = os.path.join(HERE, 'fake_dists', 'choxie-2.0.0.9.dist-info',
                          LEGACY_METADATA_FILENAME)
        md = Metadata(path=fn)
        md.validate()
        self.assertIsNotNone(md._legacy)
        self.assertEqual(set(md.run_requires),
                         set(['towel-stuff (0.1)', 'nut']))
        self.assertEqual(md.metadata_version, '1.2')
        self.assertEqual(md.version, '2.0.0.9')
        self.assertEqual(md.meta_requires, [])
        self.assertEqual(set(md.provides),
                         set(['choxie (2.0.0.9)', 'truffles (1.0)']))

        # Initialise from new metadata
        fn = os.path.join(HERE, METADATA_FILENAME)
        md = Metadata(path=fn)
        md.validate()
        self.assertIsNone(md._legacy)
        self.assertEqual(md.metadata_version, '2.0')
        self.assertEqual(md.name, 'foobar')
        self.assertEqual(md.version, '0.1')
        self.assertEqual(md.provides, ['foobar (0.1)'])
Esempio n. 4
0
    def test_init(self):
        "Test initialisation"
        md = Metadata()
        self.assertIsNone(md._legacy)
        self.assertRaises(MetadataMissingError, md.validate)
        md.name = 'dummy'
        self.assertRaises(MetadataMissingError, md.validate)
        md.version = '0.1'
        self.assertRaises(MetadataMissingError, md.validate)
        md.summary = 'Summary'
        md.validate()
        self.assertEqual(md.name, 'dummy')
        self.assertEqual(md.version, '0.1')

        # Initialise from mapping
        md = Metadata(mapping={
                        'metadata_version': '2.0',
                        'name': 'foo',
                        'version': '0.3.4',
                        'summary': 'Summary',
                      })
        md.validate()
        self.assertEqual(md.name, 'foo')
        self.assertEqual(md.version, '0.3.4')
        self.assertEqual(md.run_requires, [])
        self.assertEqual(md.meta_requires, [])
        self.assertEqual(md.provides, ['foo (0.3.4)'])

        # Initialise from legacy metadata
        fn = os.path.join(HERE, 'fake_dists', 'choxie-2.0.0.9.dist-info',
                          'METADATA')
        md = Metadata(path=fn)
        md.validate()
        self.assertIsNotNone(md._legacy)
        self.assertEqual(set(md.run_requires), set(['towel-stuff (0.1)', 'nut']))
        self.assertEqual(md.metadata_version, '1.2')
        self.assertEqual(md.version, '2.0.0.9')
        self.assertEqual(md.meta_requires, [])
        self.assertEqual(set(md.provides),
                         set(['choxie (2.0.0.9)', 'truffles (1.0)']))

        # Initialise from new metadata
        fn = os.path.join(HERE, METADATA_FILENAME)
        md = Metadata(path=fn)
        md.validate()
        self.assertIsNone(md._legacy)
        self.assertEqual(md.metadata_version, '2.0')
        self.assertEqual(md.name, 'foobar')
        self.assertEqual(md.version, '0.1')
        self.assertEqual(md.provides, ['foobar (0.1)'])