def test_generate_tags_two_entities(self): """should create one tag with two entities""" entity1 = Entity(self.config) entity1.meta["tags"] = ["foo"] entity2 = Entity(self.config) entity2.meta["tags"] = ["foo"] self.plugin.generate_tags(entity1) self.plugin.generate_tags(entity2) self.assertEqual(len(self.plugin.tags["foo"].entities), 2)
def setUp(self): self.e1 = Entity({}) self.e1.meta["title"] = "foo" self.e1.meta["layout"] = "post" self.e2 = Entity({}) self.e2.meta["title"] = "bar" self.e2.meta["layout"] = "post" self.e2.tag = "asdf" self.site = Site() self.site.entities.append(self.e1) self.site.entities.append(self.e2)
def test_run(self): """should create two entities and add it to the sites entities""" entity1 = Entity(self.config) entity1.meta["tags"] = ["foo"] entity2 = Entity(self.config) entity2.meta["tags"] = ["bar"] self.site.entities.append(entity1) self.site.entities.append(entity2) plugin = Plugin(self.site, self.config) plugin.run() self.assertEqual(len(self.site.entities), 4)
def run(self): """run the plugin""" for name in self.generate: new = Entity(self.config) new.meta["title"] = name new.meta["layout"] = self.generate[name] self.site.entities.append(new)
def setUp(self): self.config = Config() self.config.options = {"markdown": {"extras": "."}} self.site = Site() self.entity = Entity(self.config) self.entity.raw = "foobar"
def test_generate_tags(self): """should create two tags""" entity = Entity(self.config) entity.meta["tags"] = ["foo", "bar"] self.plugin.generate_tags(entity) self.assertTrue("foo" in self.plugin.tags) self.assertTrue("bar" in self.plugin.tags)
def setUp(self): config = Config() config.options = { "jinja": { "template": "foo", } } self.entity = Entity(config) site = Site() site.entities.append(self.entity) self.render = Render(site, config)
def parse_file(self, raw): """ create an entity from a read file Arguments: raw: input """ (header, seperator, content) = raw.partition("---") meta = yaml.load(header) entity = Entity(self.config) entity.meta = meta entity.raw = content.strip() self.site.entities.append(entity)
def create_entity(self, tag): """ Create a new entity for a tag if it does not exist Arguments: tag: tag name """ lower = tag.lower() if lower in self.tags: return entity = Entity(self.config) entity.meta["title"] = tag entity.meta["layout"] = "tag" entity.entities = list() self.tags[lower] = entity
def setUp(self): self.config = Config() self.entity = Entity(self.config)
def test_generate_tags_no_tags(self): """should not raise a KeyError""" entity = Entity(self.config) self.plugin.generate_tags(entity)