private void _checkClassification(string sequence, Couple[] expected) { Lexer lexer; ClassificationTag returned_tag; TestingClassifier classifier; StringBuilder recognized; string error; int i; classifier = new TestingClassifier(); lexer = new Lexer(); lexer.Parse(sequence); recognized = new StringBuilder(); i = 0; while (lexer.Next()) { recognized.Append(lexer.CurrentToken.Text); error = String.Format( "Token [{0}] was expected, but [{1}] was returned instead, near: [{2}].", expected[i].Text, lexer.CurrentToken.Text, recognized.ToString()); Assert.That(lexer.CurrentToken.Text, Is.EqualTo(expected[i].Text), error); returned_tag = classifier.Classify(lexer.CurrentToken); error = String.Format( "ClassificationTag [{0}] was expected, but [{1}] was returned instead, near: [{2}].", expected[i].Value, returned_tag, recognized.ToString()); Assert.That(returned_tag, Is.EqualTo(expected[i].Value), error); i++; } Assert.That(lexer.Next(), Is.False, "Error, there are unvisited tokens left."); Assert.That(i == expected.Length, "Error, more tokens were expected."); return; }
public void SetUp() { _classifier = new TestingClassifier(); return; }