public void TestFindTermRenderingInUse_SomeMissing() { IKeyTerm ktGod = AddMockedKeyTerm("God", "Dios", 1, 4); IKeyTerm ktPaul = AddMockedKeyTerm("Paul", "Pablo", 1, 2, 5); IKeyTerm ktHave = AddMockedKeyTerm("have", "tenemos", 1, 2, 3, 4, 5, 6); IKeyTerm ktSay = AddMockedKeyTerm("say", "dice", 1, 2, 5); TranslatablePhrase phrase1 = new TranslatablePhrase("What did God tell Paul?"); TranslatablePhrase phrase2 = new TranslatablePhrase("What does Paul say we have to give to God?"); new PhraseTranslationHelper(new[] { phrase1, phrase2 }, m_dummyKtList, m_keyTermRules, new List<Substitution>()); phrase1.Translation = "\u00BFQue\u0301 le dijo Jehovah a Pablo?"; phrase2.Translation = "Pi\u0301dale ayuda a Bill."; SubstringDescriptor sd; sd = phrase1.FindTermRenderingInUse(new DummyKeyTermRenderingInfo(ktGod, 0)); Assert.IsNull(sd); sd = phrase1.FindTermRenderingInUse(new DummyKeyTermRenderingInfo(ktPaul, 0)); Assert.AreEqual(24, sd.Offset); Assert.AreEqual(5, sd.Length); sd = phrase2.FindTermRenderingInUse(new DummyKeyTermRenderingInfo(ktPaul, 0)); Assert.IsNull(sd); sd = phrase2.FindTermRenderingInUse(new DummyKeyTermRenderingInfo(ktSay, 0)); Assert.IsNull(sd); sd = phrase2.FindTermRenderingInUse(new DummyKeyTermRenderingInfo(ktHave, 0)); Assert.IsNull(sd); sd = phrase2.FindTermRenderingInUse(new DummyKeyTermRenderingInfo(ktGod, 0)); Assert.IsNull(sd); }
public void TestFindTermRenderingInUse_RepeatedTerms() { IKeyTerm ktGod = AddMockedKeyTerm("God", "Dios", 1, 4); IKeyTerm ktPaul = AddMockedKeyTerm("Paul", "Pablo", 1, 2, 5); TranslatablePhrase phrase1 = new TranslatablePhrase("What did God tell Paul?/What was Paul told by God"); new PhraseTranslationHelper(new[] { phrase1 }, m_dummyKtList, m_keyTermRules, new List<Substitution>()); phrase1.Translation = "\u00BFQue\u0301 le dijo Dios a Pablo?/\u00BFQue\u0301 le fue dicho a Pablo por Dios?"; SubstringDescriptor sd; sd = phrase1.FindTermRenderingInUse(new DummyKeyTermRenderingInfo(ktGod, 0)); Assert.AreEqual(14, sd.Offset); Assert.AreEqual(4, sd.Length); int endOfLastOccurrenceOfGod = sd.EndOffset; sd = phrase1.FindTermRenderingInUse(new DummyKeyTermRenderingInfo(ktPaul, 0)); Assert.AreEqual(21, sd.Offset); Assert.AreEqual(5, sd.Length); int endOfLastOccurrenceOfPaul = sd.EndOffset; sd = phrase1.FindTermRenderingInUse(new DummyKeyTermRenderingInfo(ktGod, endOfLastOccurrenceOfGod)); Assert.AreEqual(59, sd.Offset); Assert.AreEqual(4, sd.Length); sd = phrase1.FindTermRenderingInUse(new DummyKeyTermRenderingInfo(ktPaul, endOfLastOccurrenceOfPaul)); Assert.AreEqual(49, sd.Offset); Assert.AreEqual(5, sd.Length); }
public void TestFindTermRenderingInUse_Present() { IKeyTerm ktGod = AddMockedKeyTerm("God", "Dios", 1, 4); IKeyTerm ktPaul = AddMockedKeyTerm("Paul", "Pablo", 1, 2, 5); IKeyTerm ktHave = AddMockedKeyTerm("have", "tenemos", 1, 2, 3, 4, 5, 6); IKeyTerm ktSay = AddMockedKeyTerm("say", "dice", 1, 2, 5); TranslatablePhrase phrase1 = new TranslatablePhrase("What did God tell Paul?"); TranslatablePhrase phrase2 = new TranslatablePhrase("What does Paul say we have to give to God?"); new PhraseTranslationHelper(new[] {phrase1, phrase2}, m_dummyKtList, m_keyTermRules, new List<Substitution>()); phrase1.Translation = "\u00BFQue\u0301 le dijo Dios a Pablo?"; phrase2.Translation = "\u00BFQue\u0301 dice luaP que tenemos que dar a Dios?"; SubstringDescriptor sd; sd = phrase1.FindTermRenderingInUse(new DummyKeyTermRenderingInfo(ktGod, 0)); Assert.AreEqual(14, sd.Offset); Assert.AreEqual(4, sd.Length); sd = phrase1.FindTermRenderingInUse(new DummyKeyTermRenderingInfo(ktPaul, 0)); Assert.AreEqual(21, sd.Offset); Assert.AreEqual(5, sd.Length); sd = phrase2.FindTermRenderingInUse(new DummyKeyTermRenderingInfo(ktPaul, 0)); Assert.AreEqual(11, sd.Offset); Assert.AreEqual(4, sd.Length); sd = phrase2.FindTermRenderingInUse(new DummyKeyTermRenderingInfo(ktSay, 0)); Assert.AreEqual(6, sd.Offset); Assert.AreEqual(4, sd.Length); sd = phrase2.FindTermRenderingInUse(new DummyKeyTermRenderingInfo(ktHave, 0)); Assert.AreEqual(20, sd.Offset); Assert.AreEqual(7, sd.Length); sd = phrase2.FindTermRenderingInUse(new DummyKeyTermRenderingInfo(ktGod, 0)); Assert.AreEqual(38, sd.Offset); Assert.AreEqual(4, sd.Length); }