public void TestReplaceToken() { LocalisationParser parser = new LocalisationParser("TestReplaceToken.txt"); parser.ReplaceToken("doesn't work"); Assert.AreEqual("A bee C", parser.Context); Assert.IsTrue(parser.NextToken()); Assert.IsTrue(parser.NextToken()); Assert.AreEqual("bee", parser.Token); Assert.AreEqual(2, parser.Offset); parser.ReplaceToken("B"); Assert.AreEqual("B", parser.Token); Assert.AreEqual(2, parser.Offset); Assert.AreEqual("A B C", parser.Context); Assert.IsTrue(parser.NextToken()); Assert.AreEqual("A B C", parser.Context); Assert.AreEqual(1, parser.Line); Assert.IsTrue(parser.NextToken()); Assert.AreEqual("ok", parser.String); parser.ReplaceToken("nok"); Assert.AreEqual("nok", parser.Token); Assert.AreEqual("nok // \"nok\"", parser.Context); Assert.AreEqual(2, parser.Line); Assert.IsTrue(parser.NextToken()); Assert.AreEqual(@"'\5'", parser.Token); parser.ReplaceToken("'5'"); Assert.AreEqual("'5'", parser.Token); Assert.AreEqual("'5' /* '5' */", parser.Context); Assert.AreEqual(3, parser.Line); Assert.IsTrue(parser.NextToken()); Assert.AreEqual(4, parser.Line); Assert.AreEqual("@\"mul", parser.Context); parser.ReplaceToken("YIP"); Assert.AreEqual(4, parser.Line); Assert.AreEqual("YIPPEE", parser.Context); Assert.IsTrue(parser.NextToken()); Assert.AreEqual(4, parser.Line); Assert.AreEqual("PEE", parser.Token); Assert.IsTrue(parser.NextToken()); Assert.AreEqual(5, parser.Line); Assert.AreEqual("@\"not\"multi", parser.Context); parser.ReplaceToken("DO\nIT\nGOOD"); Assert.AreEqual(5, parser.Line); Assert.AreEqual("DO", parser.Context); Assert.IsTrue(parser.NextToken()); Assert.AreEqual("multi", parser.Token); Assert.AreEqual(7, parser.Line); Assert.AreEqual("GOODmulti", parser.Context); Assert.IsTrue(parser.NextToken()); Assert.AreEqual(8, parser.Line); Assert.AreEqual("@\"", parser.Context); parser.ReplaceToken("\n\n"); Assert.AreEqual(8, parser.Line); Assert.AreEqual("", parser.Context); Assert.IsTrue(parser.NextToken()); Assert.AreEqual("OK", parser.Token); Assert.AreEqual(13, parser.Line); Assert.IsFalse(parser.NextToken()); }