Example #1
0
    def test_article_metadata_key_lowercase(self):
        """Keys of metadata should be lowercase."""
        reader = readers.RstReader({})
        content, metadata = reader.read(_filename('article_with_uppercase_metadata.rst'))

        self.assertIn('category', metadata, "Key should be lowercase.")
        self.assertEquals('Yeah', metadata.get('category'), "Value keeps cases.")
Example #2
0
    def test_article_metadata_key_lowercase(self):
        # Keys of metadata should be lowercase.
        reader = readers.RstReader(settings=get_settings())
        content, metadata = reader.read(
            _path('article_with_uppercase_metadata.rst'))

        self.assertIn('category', metadata, 'Key should be lowercase.')
        self.assertEqual('Yeah', metadata.get('category'), 'Value keeps case.')
Example #3
0
 def test_article_with_metadata(self):
     reader = readers.RstReader()
     content, metadata = reader.read(_filename('article_with_metadata.rst'))
     expected = {
         'category': 'yeah',
         'author': u'Alexis Métaireau',
         'title': 'This is a super article !',
         'summary': 'Multi-line metadata should be supported\nas well as <strong>inline markup</strong>.',
         'date': datetime.datetime(2010, 12, 2, 10, 14),
         'tags': ['foo', 'bar', 'foobar'],
     }
     self.assertDictEqual(metadata, expected)
Example #4
0
def read_comment(comment_file, header=True):

    content = None
    if comment_file[-4:] == '.rst':
        reader = readers.RstReader({})
        body, metadata = reader.read(comment_file)
        content = metadata if header else body
    elif comment_file[-3:] == '.md':
        reader = readers.MarkdownReader({})
        body, metadata = reader.read(comment_file)
        content = metadata if header else body
    # return header or body
    return content
Example #5
0
    def test_article_with_metadata(self):
        reader = readers.RstReader({})
        content, metadata = reader.read(_filename('article_with_metadata.rst'))
        expected = {
            'category': 'yeah',
            'author': u'Alexis Métaireau',
            'title': 'This is a super article !',
            'summary': u'<p class="first last">Multi-line metadata should be'\
                       u' supported\nas well as <strong>inline'\
                       u' markup</strong>.</p>\n',
            'date': datetime.datetime(2010, 12, 2, 10, 14),
            'tags': ['foo', 'bar', 'foobar'],
            'custom_field': 'http://notmyidea.org',
        }

        for key, value in expected.items():
            self.assertEquals(value, metadata[key], key)