Пример #1
0
        public void Children_MultipleFragments_ChildrenAreOfCorrectType(string line, Type node1Type, Type node2Type)
        {
            var node = new HamlNodeTextContainer(0, line);

            Assert.That(node.Children.First(), Is.InstanceOf(node1Type));
            Assert.That(new List <HamlNode>(node.Children)[1], Is.InstanceOf(node2Type));
        }
Пример #2
0
        public void Children_FirstChildIsOfCorrectType(string line, Type expectedType)
        {
            var node = new HamlNodeTextContainer(0, line);

            Assert.That(node.Children.First(), Is.InstanceOf(expectedType));
            Assert.That(node.Children.Count(), Is.EqualTo(1));
        }
Пример #3
0
        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));
        }
Пример #4
0
        private void RenderIndent(HamlNode node, HamlNodeTextContainer nodeText)
        {
            if (node.IsLeadingWhitespaceTrimmed)
            {
                return;
            }
            if (node.IsWhitespaceNode() && node.IsTrailingWhitespaceTrimmed)
            {
                return;
            }

            ClassBuilder.Append(nodeText.Indent);
        }
Пример #5
0
        public void GetNextUnresolvedPartial_PartialIsAGrandchildNode_ReturnsPartial()
        {
            var textContainerNode = new HamlNodeTextContainer(0, "Test content");
            var partial           = new HamlNodePartial(new HamlLine("", HamlRuleEnum.Partial, "", -1));

            textContainerNode.AddChild(partial);

            var rootNode = new HamlNodeDummy();

            rootNode.AddChild(textContainerNode);

            var result = rootNode.GetNextUnresolvedPartial();

            Assert.That(result, Is.EqualTo(partial));
        }
Пример #6
0
        public void Walk_InvalidNodeType_ThrowsInvalidCastException()
        {
            var node = new HamlNodeTextContainer(0, "");

            Assert.Throws <InvalidCastException>(() => _walker.Walk(node));
        }
Пример #7
0
        public void Children_EscapedContent_RemovesEscapeCharacter()
        {
            var node = new HamlNodeTextContainer(new HamlLine("\\#{variable}", HamlRuleEnum.PlainText, "", 0));

            Assert.That(node.Children.First().Content, Is.EqualTo("#{variable}"));
        }
Пример #8
0
        public void Children_EmptyString_NoChildren()
        {
            var node = new HamlNodeTextContainer(new HamlLine("", HamlRuleEnum.PlainText, "", 0));

            Assert.That(node.Children.Count(), Is.EqualTo(0));
        }
Пример #9
0
        public void IsWhitespace_ReturnsCorrectResult(string whiteSpace, bool expectedResult)
        {
            var node = new HamlNodeTextContainer(new HamlLine(whiteSpace, HamlRuleEnum.PlainText, "", 0));

            Assert.That(node.IsWhitespace(), Is.EqualTo(expectedResult));
        }