public void Read_MultiLineTemplate_MoveNextReturnsSecondCurrentLine() { string template = "test\ntest2"; var textReader = new StringReader(template); var result = new HamlFileLexer().Read(textReader); result.MoveNext(); Assert.AreEqual("test2", result.CurrentLine.Content); }
public void Read_HandlesNonStandardLineBreaksCorrectly(string template, int expectedLineCount, string expectedLine1, string expectedLine2) { var textReader = new StringReader(template); var result = new HamlFileLexer().Read(textReader); // Assert Assert.AreEqual(expectedLineCount, result.LineCount); Assert.AreEqual(expectedLine1, result.CurrentLine.Content); if (!result.EndOfFile) { result.MoveNext(); Assert.AreEqual(expectedLine2, result.CurrentLine.Content); } }
public void Read_SingleLineTemplate_MoveNextReturnsNullCurrentLine() { string template = "test"; var textReader = new StringReader(template); var result = new HamlFileLexer().Read(textReader); result.MoveNext(); Assert.IsNull(result.CurrentLine); }
public void Read_ReturnsLineWithCorrectIndent(string template, int expectedIndentCount) { var textReader = new StringReader(template); var result = new HamlFileLexer().Read(textReader); Assert.AreEqual(expectedIndentCount, result.CurrentLine.IndentCount); }
public void Read_NormalUse_ReturnsHamlFile() { var textReader = new StringReader(""); var result = new HamlFileLexer().Read(textReader); Assert.IsInstanceOf<HamlFile>(result); }
public HamlTreeParser(HamlFileLexer hamlFileLexer) { _hamlFileLexer = hamlFileLexer; }