51
StencilTests/TemplateLoader/InheritenceTests.swift
Normal file
51
StencilTests/TemplateLoader/InheritenceTests.swift
Normal file
@@ -0,0 +1,51 @@
|
||||
import Foundation
|
||||
import XCTest
|
||||
import Stencil
|
||||
import PathKit
|
||||
|
||||
class InheritenceTests: NodeTests {
|
||||
var loader:TemplateLoader!
|
||||
|
||||
override func setUp() {
|
||||
super.setUp()
|
||||
|
||||
let path = (Path(__FILE__) + Path("../..")).absolute()
|
||||
loader = TemplateLoader(paths: [path])
|
||||
}
|
||||
|
||||
func testInheritence() {
|
||||
context = Context(dictionary: ["loader": loader])
|
||||
let template = loader.loadTemplate("child.html")!
|
||||
let result = template.render(context)
|
||||
|
||||
switch result {
|
||||
case .Success(let rendered):
|
||||
XCTAssertEqual(rendered, "Header\nChild")
|
||||
case .Error(let error):
|
||||
XCTAssert(false, "Unexpected error")
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//class BlockNodeTests: NodeTests {
|
||||
// func testBlockNodeWithoutChildren() {
|
||||
// let context = Context()
|
||||
// let block = BlockNode(name:"header", nodes:[TextNode(text: "contents")])
|
||||
// let result = block.render(context)
|
||||
//
|
||||
// assertSuccess(result) { rendered in
|
||||
// XCTAssertEqual(rendered, "contents")
|
||||
// }
|
||||
// }
|
||||
//
|
||||
// func testBlockNodeWithChild() {
|
||||
// let context = Context()
|
||||
// let node = BlockNode(name:"header", nodes:[TextNode(text: "contents")])
|
||||
// let childBlock = BlockNode(name: "header", nodes: [TextNode(text: "child contents")])
|
||||
// let result = node.render(context)
|
||||
//
|
||||
// assertSuccess(result) { rendered in
|
||||
// XCTAssertEqual(rendered, "child contents")
|
||||
// }
|
||||
// }
|
||||
//}
|
||||
2
StencilTests/base.html
Normal file
2
StencilTests/base.html
Normal file
@@ -0,0 +1,2 @@
|
||||
{% block header %}Header{% endblock %}
|
||||
{% block body %}Body{% endblock %}
|
||||
2
StencilTests/child.html
Normal file
2
StencilTests/child.html
Normal file
@@ -0,0 +1,2 @@
|
||||
{% extends "base.html" %}
|
||||
{% block body %}Child{% endblock %}
|
||||
Reference in New Issue
Block a user