SiteSpec in dsl.

This commit is contained in:
Jesse Brault 2023-02-16 09:10:54 +01:00
parent 60f4c1415f
commit ef9e5669e3
6 changed files with 55 additions and 0 deletions

View File

@ -48,6 +48,7 @@ class GspPartRenderer implements PartRenderer {
targetPath
),
path: path,
siteSpec: siteSpec,
tagBuilder: new DynamicTagBuilder(),
targetPath: targetPath,
text: text,

View File

@ -41,6 +41,7 @@ class GspSpecialPageRenderer implements SpecialPageRenderer {
targetPath
),
path: specialPage.path,
siteSpec: siteSpec,
tagBuilder: new DynamicTagBuilder(),
targetPath: targetPath,
texts: new EmbeddableTextsCollection(texts, globals, diagnostics.&addAll),

View File

@ -42,6 +42,7 @@ class GspTemplateRenderer implements TemplateRenderer {
globals: globals,
parts: new EmbeddablePartsMap(parts, siteSpec, globals, onDiagnostics, embeddableText, text.path, targetPath),
path: text.path,
siteSpec: siteSpec,
tagBuilder: new DynamicTagBuilder(),
targetPath: targetPath,
text: embeddableText,

View File

@ -171,4 +171,21 @@ class GspPartRendererTests {
assertEquals('test/test.html', r.v2)
}
@Test
void siteSpecBaseUrlAvailable() {
def part = new Part('', null, '<%= siteSpec.baseUrl %>')
def r = this.renderer.render(
part,
[:],
new SiteSpec('', 'https://test.com'),
[:],
null,
[part],
'',
''
)
assertEmptyDiagnostics(r)
assertEquals('https://test.com', r.v2)
}
}

View File

@ -200,4 +200,23 @@ class GspSpecialPageRendererTests {
assertEquals('test.html', r.v2)
}
@Test
void siteSpecBaseUrlAvailable() {
def specialPage = new SpecialPage(
'<%= siteSpec.baseUrl %>',
'',
null
)
def r = this.renderer.render(
specialPage,
[],
[],
new SiteSpec('', 'https://test.com'),
[:],
''
)
assertEmptyDiagnostics(r)
assertEquals('https://test.com', r.v2)
}
}

View File

@ -229,4 +229,20 @@ class GspTemplateRendererTests {
assertEquals('test.html', r.v2)
}
@Test
void siteSpecBaseUrlAvailable() {
def template = new Template('<%= siteSpec.baseUrl %>', null, null)
def r = this.renderer.render(
template,
new FrontMatter(null, [:]),
blankText(),
[],
new SiteSpec('', 'https://test.com'),
[:],
'test.html'
)
assertEmptyDiagnostics(r)
assertEquals('https://test.com', r.v2)
}
}