public void Walk_ComplexPropertyName_CallsCodeSnippetToStringCorrectly(string variableName, string expectedCodeSnippet)
 {
     var node = new HamlNodeTextVariable(0, variableName);
     var walker = new HamlNodeTextVariableWalker(_mockClassBuilder.Object, new HamlHtmlOptions());
     walker.Walk(node);
     _mockClassBuilder.Verify(x => x.AppendCodeToString(expectedCodeSnippet));
 }
 public void Walk_SimpleVariableName_CallsAppendVariableCorrectly(string variableName, string expectedCall)
 {
     var node = new HamlNodeTextVariable(0, variableName);
     var walker = new HamlNodeTextVariableWalker(_mockClassBuilder.Object, new HamlHtmlOptions());
     walker.Walk(node);
     _mockClassBuilder.Verify(x => x.AppendVariable(expectedCall));
 }
Пример #3
0
        private void ParseValue(int index)
        {
            if (index >= Content.Length) return;

            string value = Content.Substring(index + 1);
            HamlNode childNode = null;
            if (IsQuoted(value))
                childNode = new HamlNodeTextContainer(Metrics.SubSpan(index + 2, value.Length-2),
                    RemoveQuotes(value));
            else
                childNode = new HamlNodeTextVariable(Metrics.SubSpan(index + 1, value.Length),
                    RemoveQuotes(value));

            AddChild(childNode);
        }