예제 #1
0
    def test_metadata_authoremail(self):
        """
        Tests the various email forms and Author
        """
        md = self._metadata_base
        md['Author'] = 'An Author'
        md['Author-Email'] = 'An Author <*****@*****.**>'
        self.assertIsNotNone(check_metadata(md))

        md['Author-Email'] = '*****@*****.**'
        self.assertIsNotNone(check_metadata(md))

        md['Author-Email'] = 'some.email.without.at.sign.com'
        self.assertRaisesRegexp(MetaDataError, r'^Author.*email.*', check_metadata, md)
예제 #2
0
 def test_metadata_scenery(self):
     """
     Test the metadata of a scenery
     """
     assert os.path.exists(_metadata_scenery_filename)
     metadata = yaml.load(open(_metadata_scenery_filename))
     pprint(metadata)
     assert check_metadata(metadata)
예제 #3
0
 def test_metadata_aircraft(self):
     """
     Test the metadata of a aircraft
     """
     assert os.path.exists(_metadata_aircraft_filename)
     metadata = yaml.load(open(_metadata_aircraft_filename))
     pprint(metadata)
     assert check_metadata(metadata)
예제 #4
0
    def test_sections(self):
        """
        Tests the sections
        """
        md = self._metadata_base

        # happy path
        for section in ['Aircraft', 'Scenery', 'Plugin', 'Livery', 'Navdata']:
            md['Section'] = section
            self.assertIsNotNone(check_metadata(md))

        # unhappy
        md['Section'] = 'Foobar'
        self.assertRaisesRegexp(MetaDataError, r'^The Section.*is not known.*', check_metadata, md)
예제 #5
0
    def test_keywords(self):
        """
        Tests the various Keywords, and the various keyword capatilisation types
        """
        md = self._metadata_base

        # happy path
        for key in ['Depends', 'Recommends',
                    'Suggests', 'Pre-Depends', 'Conflicts', 'Replaces', 'Provides', 'Description', 'Section',
                    'Installed-Size', 'Date', 'Changes', 'Size', 'Md5sum', 'License', 'Download-Url',
                    'Package-Url', 'Home-Page', 'Categories']:
            md[key] = None
            self.assertIsNotNone(check_metadata(md))
            del md[key]

        md = self._metadata_base
        md['Architecture'] = 'Win'
        self.assertIsNotNone(check_metadata(md))

        # other paths
        md = self._metadata_base
        md['metadata-version'] = '1.0'
        self.assertIsNotNone(check_metadata(md))

        # spaces are replaced with '-', whitespace is trimmed, key is titlelised
        md = self._metadata_base
        md['MeTaData verSiON '] = '1.0'
        self.assertIsNotNone(check_metadata(md))

        # some keys are required
        for required_key in ['Metadata-Version', 'Package', 'Version']:
            md = self._metadata_base
            del md[required_key]
            try:
                check_metadata(md)
            except MetaDataError:
                #noinspection PyStatementEffect
                True