public void Walk_IndentedNode_WritesIndent() { const string indent = " "; var node = new HamlNodeTextContainer(new HamlLine("Content", HamlRuleEnum.PlainText, indent, 0)); _walker.Walk(node); Assert.That(_mockClassBuilder.Build(""), Is.StringStarting(indent)); }
public void WalkChildren_TextNode_WalksTextNode() { const string testText = "Hello world"; var document = HamlDocumentBuilder.Create("", new HamlNodeTextContainer(new HamlLine(testText, HamlRuleEnum.PlainText, "", 0))); _walker.Walk(document); Assert.That(_classBuilderMock.Build(""), Is.StringContaining(testText)); }
public void Walk_ValidNode_AppendsCorrectOutput() { // Arrange string comment = "Comment"; var node = new HamlNodeHtmlComment(new HamlLine(comment, HamlRuleEnum.HtmlComment, "", 0)); // Act _walker.Walk(node); // Assert Assert.That(_classBuilderMock.Build(""), Is.EqualTo("<!--" + comment + " -->")); }
public void Walk_ValidNode_DoesNotGenerateContent() { var node = new HamlNodeCode(new HamlLine("1+1", HamlRuleEnum.Code, "", -1)); var classBuilder = new ClassBuilderMock(); var walker = new HamlNodeCodeWalker(classBuilder, new HamlHtmlOptions()); walker.Walk(node); Assert.That(classBuilder.Build(""), Is.EqualTo("")); }
public void Walk_VaryingAttributeCollections_WritesCorrectAttributes(string hamlLine, string expectedTag) { var node = new HamlNodeHtmlAttributeCollection(0, hamlLine); var builder = new ClassBuilderMock(); new HamlNodeHtmlAttributeCollectionWalker(builder, new HamlHtmlOptions()) .Walk(node); Assert.That(builder.Build(""), Is.EqualTo(expectedTag)); }
public void Walk_ConditionalWithChildNode_RendersChildNode() { const string dummyText = "Hello"; var node = new HamlNodeCode(new HamlLine("if (true)", HamlRuleEnum.Code, "", -1)); node.AddChild(new HamlNodeTextContainer(0, dummyText)); var classBuilder = new ClassBuilderMock(); var walker = new HamlNodeCodeWalker(classBuilder, new HamlHtmlOptions()); walker.Walk(node); Assert.That(classBuilder.Build(""), Is.EqualTo(dummyText)); }
public void Walk_TextNode_AppendsCorrectTag() { // Arrange var content = new HamlLine("Simple content", HamlRuleEnum.PlainText, "", 0); var document = HamlDocumentBuilder.Create("", new HamlNodeTextContainer(content)); Type baseType = typeof(Template); // Act var builder = new ClassBuilderMock(); new HamlDocumentWalker(builder).Walk(document, "", baseType, new List <string>()); // Assert Assert.That(builder.Build(""), Is.EqualTo(content.Content)); }
public void Walk_NonSelfClosingTags_AppendsCorrectTag(string templateLine, string expectedOutput) { // Arrange var tagNode = new HamlNodeTag(new HamlLine(templateLine, HamlRuleEnum.Tag, "", 0)); // Act _tagWalker.Walk(tagNode); // Assert Assert.That(_classBuilderMock.Build(""), Is.StringContaining(expectedOutput)); }