public void NextHasTwoVariantsAndAreDeterminate() { var R1 = new List <string> { "<R2>", "<A>" }; var R21 = new List <string> { "nu" }; var R22 = new List <string> { "ny" }; var list = new List <Sentence> { new Sentence("<R1>", R1), new Sentence("<R2>", R21), new Sentence("<R2>", R22) }; GuideSetCreator creator = new GuideSetCreator(list); Assert.AreEqual(creator.Sentences[2].ForwardSet.Count, 1); Assert.AreEqual(creator.Sentences[1].ForwardSet.Count, 1); Assert.AreEqual(creator.Sentences[0].ForwardSet.Count, 2); Assert.AreEqual(creator.Sentences[1].ForwardSet[0], R21[0]); Assert.AreEqual(creator.Sentences[2].ForwardSet[0], R22[0]); Assert.AreEqual(creator.Sentences[0].ForwardSet[0], R21[0]); Assert.AreEqual(creator.Sentences[0].ForwardSet[1], R22[0]); }
public void NextIsEmptyAndNextNextNextNextIsDeterminate() { var R1 = new List <string> { "e" }; var R2 = new List <string> { "ха", "<R1>", "<R3>" }; var R3 = new List <string> { "<R4>" }; var R4 = new List <string> { "nu" }; var list = new List <Sentence> { new Sentence("<R1>", R1), new Sentence("<R2>", R2), new Sentence("<R3>", R3), new Sentence("<R4>", R4) }; GuideSetCreator creator = new GuideSetCreator(list); Assert.AreEqual(creator.Sentences[0].ForwardSet.Count, 1); Assert.AreEqual(creator.Sentences[0].ForwardSet[0], R4[0]); }
public void FinalTest2() { var R1 = new List <string> { "e" }; var R2 = new List <string> { "<R4>", "<R1>", "<R3>" }; var R3 = new List <string> { "e" }; var R4 = new List <string> { "<R3>", "ne" }; var list = new List <Sentence> { new Sentence("<R1>", R1), new Sentence("<R2>", R2), new Sentence("<R3>", R3), new Sentence("<R4>", R4) }; GuideSetCreator creator = new GuideSetCreator(list); Assert.AreEqual(creator.Sentences[0].ForwardSet.Count, 1); Assert.AreEqual(creator.Sentences[0].ForwardSet[0], R4[1]); }
static void Main(string[] args) { using (StreamReader streamReader = new StreamReader(args[0], Encoding.Default)) { var reader = new SentencesReader(streamReader); GuideSetCreator creator = new GuideSetCreator(reader.Sentences); creator.WriteResultToStream(Console.Out); } }
public void CurrentIsDeterminate() { var R1 = new List <string> { "nu", "<R2>" }; var A = new List <string> { "e" }; var list = new List <Sentence> { new Sentence("<R1>", R1), new Sentence("<A>", A) }; GuideSetCreator creator = new GuideSetCreator(list); Assert.AreEqual(creator.Sentences[0].ForwardSet[0], R1[0]); }