FrontMatter now has a Text field.
This commit is contained in:
parent
27ae22d5eb
commit
25a06332d4
@ -13,13 +13,14 @@ class FrontMatter {
|
||||
|
||||
private static final Logger logger = LoggerFactory.getLogger(FrontMatter)
|
||||
|
||||
private final Text text
|
||||
private final Map<String, List<String>> data
|
||||
|
||||
String get(String key) {
|
||||
if (data[key] != null) {
|
||||
data[key][0]
|
||||
} else {
|
||||
logger.warn('no entry for key in frontMatter, returning empty string: {}', key)
|
||||
logger.warn('in {} no entry for key {} in frontMatter, returning empty string', this.text, key)
|
||||
''
|
||||
}
|
||||
}
|
||||
@ -32,14 +33,14 @@ class FrontMatter {
|
||||
if (data[key] != null) {
|
||||
data[key]
|
||||
} else {
|
||||
logger.warn('no entry for key in frontMatter, returning empty list: {}', key)
|
||||
logger.warn('in {} no entry for key {} in frontMatter, returning empty list: {}', this.text, key)
|
||||
[]
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
String toString() {
|
||||
"FrontMatter(data: ${ this.data })"
|
||||
"FrontMatter(text: ${ this.text }, data: ${ this.data })"
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -21,9 +21,9 @@ class MarkdownFrontMatterGetter implements FrontMatterGetter {
|
||||
def node = parser.parse(text.text)
|
||||
def v = new YamlFrontMatterVisitor()
|
||||
node.accept(v)
|
||||
new Tuple2([], new FrontMatter(v.data))
|
||||
new Tuple2([], new FrontMatter(text, v.data))
|
||||
} catch (Exception e) {
|
||||
new Tuple2<>([new Diagnostic("An exception occured while parsing frontMatter for ${ text.path }:\n${ e }", e)], new FrontMatter([:]))
|
||||
new Tuple2<>([new Diagnostic("An exception occured while parsing frontMatter for ${ text.path }:\n${ e }", e)], new FrontMatter(text, [:]))
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -32,7 +32,7 @@ class GspTemplateRendererTests {
|
||||
def partType = new PartType([], partRenderer)
|
||||
def part = new Part('test', partType, null)
|
||||
|
||||
def r = this.renderer.render(template, new FrontMatter([:]), '', [part], [:])
|
||||
def r = this.renderer.render(template, new FrontMatter(null, [:]), '', [part], [:])
|
||||
assertTrue(r.v1.size() == 0)
|
||||
assertEquals('Hello, World!', r.v2)
|
||||
}
|
||||
@ -49,7 +49,7 @@ class GspTemplateRendererTests {
|
||||
def partType = new PartType([], partRenderer)
|
||||
def part = new Part('greeting', partType, null)
|
||||
|
||||
def r = this.renderer.render(template, new FrontMatter([:]), '', [part], [:])
|
||||
def r = this.renderer.render(template, new FrontMatter(null, [:]), '', [part], [:])
|
||||
assertTrue(r.v1.size() == 0)
|
||||
assertEquals('Hello, World!', r.v2)
|
||||
}
|
||||
@ -57,7 +57,7 @@ class GspTemplateRendererTests {
|
||||
@Test
|
||||
void rendersFrontMatter() {
|
||||
def template = new Template("<%= frontMatter['title'] %>", null, null)
|
||||
def r = this.renderer.render(template, new FrontMatter([title: ['Hello!']]), '', [], [:])
|
||||
def r = this.renderer.render(template, new FrontMatter(null, [title: ['Hello!']]), '', [], [:])
|
||||
assertTrue(r.v1.size() == 0)
|
||||
assertEquals('Hello!', r.v2)
|
||||
}
|
||||
@ -65,7 +65,7 @@ class GspTemplateRendererTests {
|
||||
@Test
|
||||
void rendersGlobal() {
|
||||
def template = new Template("<%= globals['test'] %>", null, null)
|
||||
def r = this.renderer.render(template, new FrontMatter([:]), '', [], [test: 'Hello, World!'])
|
||||
def r = this.renderer.render(template, new FrontMatter(null, [:]), '', [], [test: 'Hello, World!'])
|
||||
assertTrue(r.v1.size() == 0)
|
||||
assertEquals('Hello, World!', r.v2)
|
||||
}
|
||||
@ -73,7 +73,7 @@ class GspTemplateRendererTests {
|
||||
@Test
|
||||
void rendersText() {
|
||||
def template = new Template('<%= text %>', null, null)
|
||||
def r = this.renderer.render(template, new FrontMatter([:]), 'Hello, World!', [], [:])
|
||||
def r = this.renderer.render(template, new FrontMatter(null, [:]), 'Hello, World!', [], [:])
|
||||
assertTrue(r.v1.size() == 0)
|
||||
assertEquals('Hello, World!', r.v2)
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user