コード例 #1
0
    def test_metadata_has_no_discarded_data(self):
        md_filename = 'article_with_markdown_and_empty_tags.md'

        r = readers.Readers(cache_name='cache',
                            settings=get_settings(CACHE_CONTENT=True))
        page = r.read_file(base_path=CONTENT_PATH, path=md_filename)

        __, cached_metadata = r.get_cached_data(_path(md_filename),
                                                (None, None))

        expected = {'title': 'Article with markdown and empty tags'}
        self.assertEqual(cached_metadata, expected)
        self.assertNotIn('tags', page.metadata)
        self.assertDictHasSubset(page.metadata, expected)
コード例 #2
0
    def __init__(self, generator):
        self._comments = collections.defaultdict(list)
        reader = readers.Readers(settings=generator.settings)

        comments_dir = generator.settings.get('COMMENTS_DIR', 'comments')
        comment_filenames = generator.get_files(comments_dir)

        for comment_filename in comment_filenames:
            comment = reader.read_file(base_path=generator.settings['PATH'],
                                       path=comment_filename,
                                       content_class=Comment,
                                       context=generator.context)

            if 'post_id' not in comment.metadata:
                raise Exception("comment %s does not have a post_id" %
                                (comment_filename, ))
            self._comments[comment.metadata['post_id']].append(comment)

        for slug, comments in self._comments.items():
            comments.sort()
            for n, comment in enumerate(comments):
                comment.cid = n
コード例 #3
0
    def read_file(self, path, **kwargs):
        # Isolate from future API changes to readers.read_file

        r = readers.Readers(settings=get_settings(**kwargs))
        return r.read_file(base_path=CONTENT_PATH, path=path)
コード例 #4
0
def read_file(path, **kwargs):
    r = readers.Readers(settings=get_settings(**kwargs))
    return r.read_file(base_path=DATA_PATH, path=path)