public void TestSetup() { Cache = FdoCache.CreateCacheWithNewBlankLangProj(new TestProjectId(FDOBackendProviderType.kMemoryOnly, null), "en", "fr", "en", new DummyFdoUI(), FwDirectoryFinder.FdoDirectories, new FdoSettings()); var loader = new XmlList(); loader.ImportList(Cache.LangProject, "PartsOfSpeech", Path.Combine(FwDirectoryFinder.TemplateDirectory, "POS.xml"), new DummyProgressDlg()); // This allows tests to do any kind of data changes without worrying about starting a UOW. Cache.ActionHandlerAccessor.BeginUndoTask("Undo doing stuff", "Redo doing stuff"); }
public void CreateMockCache() { m_cache = FdoCache.CreateCacheWithNewBlankLangProj( new TestProjectId(FDOBackendProviderType.kMemoryOnly, null), "en", "es", "en", new DummyFdoUI(), FwDirectoryFinder.FdoDirectories, new FdoSettings()); var xl = new XmlList(); using (var reader = new StringReader(XmlListTests.s_ksPartsOfSpeechXml)) { xl.ImportList(m_cache.LangProject, "PartsOfSpeech", reader, null); reader.Close(); } using (var reader = new StringReader(XmlListTests.s_ksSemanticDomainsXml)) { xl.ImportList(m_cache.LangProject, "SemanticDomainList", reader, null); reader.Close(); } m_repoPOS = m_cache.ServiceLocator.GetInstance<IPartOfSpeechRepository>(); m_repoSemDom = m_cache.ServiceLocator.GetInstance<ICmSemanticDomainRepository>(); m_wsEn = m_cache.WritingSystemFactory.GetWsFromStr("en"); m_wsEs = m_cache.WritingSystemFactory.GetWsFromStr("es"); m_wsFr = m_cache.WritingSystemFactory.GetWsFromStr("fr"); m_wsDe = m_cache.WritingSystemFactory.GetWsFromStr("de"); }
public void CreateMockCache() { m_cache = FdoCache.CreateCacheWithNewBlankLangProj( new TestProjectId(FDOBackendProviderType.kMemoryOnly, null), "en", "fr", "en", new DummyFdoUI(), FwDirectoryFinder.FdoDirectories, new FdoSettings()); var xl = new XmlList(); using (var reader = new StringReader(s_ksSemanticDomainsXml)) xl.ImportList(m_cache.LangProject, "SemanticDomainList", reader, null); }
private void LoadSemDomTestDataFromFile(string filePath) { var loader = new XmlList(); loader.ImportList(Cache.LangProject, "SemanticDomainList", filePath, new DummyProgressDlg()); }
private void LoadSemDomTestData(string xmlSemDomData) { using (var trdr = new StringReader(xmlSemDomData)) { var loader = new XmlList(); loader.ImportList(Cache.LangProject, "SemanticDomainList", trdr, new DummyProgressDlg()); } }
public void ImportList2() { var list = m_cache.LangProject.SemanticDomainListOA; Assert.AreEqual(0, list.PossibilitiesOS.Count); Assert.AreEqual(0, list.Depth); Assert.AreEqual(0, list.WsSelector); Assert.IsFalse(list.IsSorted); Assert.IsFalse(list.UseExtendedFields); Assert.AreEqual(66, list.ItemClsid); Assert.AreEqual(0, list.Abbreviation.StringCount); Assert.AreEqual(0, list.Name.StringCount); var xl = new XmlList(); using (var reader = new StringReader(s_ksSemanticDomainsXml)) { xl.ImportList(m_cache.LangProject, "SemanticDomainList", reader, null); var wsEn = m_cache.WritingSystemFactory.GetWsFromStr("en"); var wsEs = m_cache.WritingSystemFactory.GetWsFromStr("es"); var wsFr = m_cache.WritingSystemFactory.GetWsFromStr("fr"); Assert.AreEqual(2, list.PossibilitiesOS.Count); Assert.AreEqual(127, list.Depth); Assert.AreEqual(-3, list.WsSelector); Assert.IsTrue(list.IsSorted); Assert.IsFalse(list.UseExtendedFields); Assert.AreEqual(66, list.ItemClsid); Assert.AreEqual(1, list.Abbreviation.StringCount); Assert.AreEqual("Sem", list.Abbreviation.get_String(wsEn).Text); Assert.AreEqual(1, list.Name.StringCount); Assert.AreEqual("Semantic Domains", list.Name.get_String(wsEn).Text); ICmSemanticDomain sem1 = list.PossibilitiesOS[0] as ICmSemanticDomain; Assert.IsNotNull(sem1); Assert.AreNotEqual(sem1.Guid, Guid.Empty); Assert.AreEqual(1, sem1.Abbreviation.StringCount); Assert.AreEqual("1", sem1.Abbreviation.get_String(wsEn).Text); Assert.AreEqual(1, sem1.Name.StringCount); Assert.AreEqual("Universe, creation", sem1.Name.get_String(wsEn).Text); Assert.AreEqual(1, sem1.Description.StringCount); string desc = sem1.Description.get_String(wsEn).Text; Assert.IsTrue(desc.StartsWith("Use this domain for general words referring to the physical universe.")); Assert.IsTrue(desc.EndsWith(" such as 'everything you can see' or 'everything that exists'.")); Assert.AreEqual(313, desc.Length); Assert.AreEqual("772 Cosmology; 130 Geography", sem1.OcmCodes); Assert.AreEqual("1A Universe, Creation; 14 Physical Events and States", sem1.LouwNidaCodes); Assert.AreEqual(1, sem1.QuestionsOS.Count); ICmDomainQ cdq = sem1.QuestionsOS[0]; Assert.AreEqual(1, cdq.Question.StringCount); Assert.AreEqual("(1) What words refer to everything we can see?", cdq.Question.get_String(wsEn).Text); Assert.AreEqual(1, cdq.ExampleWords.StringCount); Assert.AreEqual("universe, creation, cosmos, heaven and earth, macrocosm, everything that exists", cdq.ExampleWords.get_String(wsEn).Text); Assert.AreEqual(1, cdq.ExampleSentences.StringCount); Assert.AreEqual("In the beginning God created <the heavens and the earth>.", cdq.ExampleSentences.get_String(wsEn).Text); Assert.AreEqual(3, sem1.SubPossibilitiesOS.Count); ICmSemanticDomain sem11 = sem1.SubPossibilitiesOS[0] as ICmSemanticDomain; Assert.IsNotNull(sem11); Assert.AreEqual(sem11.Guid.ToString(), "999581C4-1611-4ACB-AE1B-5E6C1DFE6F0C".ToLowerInvariant()); Assert.AreEqual(1, sem11.Abbreviation.StringCount); Assert.AreEqual("1.1", sem11.Abbreviation.get_String(wsEn).Text); Assert.AreEqual(1, sem11.Name.StringCount); Assert.AreEqual("Sky", sem11.Name.get_String(wsEn).Text); Assert.AreEqual(1, sem11.Description.StringCount); Assert.AreEqual("Use this domain for words related to the sky.", sem11.Description.get_String(wsEn).Text); Assert.IsTrue(String.IsNullOrEmpty(sem11.OcmCodes)); Assert.AreEqual("1B Regions Above the Earth", sem11.LouwNidaCodes); Assert.AreEqual(3, sem11.QuestionsOS.Count); cdq = sem11.QuestionsOS[0]; Assert.AreEqual(1, cdq.Question.StringCount); Assert.AreEqual("(1) What words are used to refer to the sky?", cdq.Question.get_String(wsEn).Text); Assert.AreEqual(1, cdq.ExampleWords.StringCount); Assert.AreEqual("sky, firmament, canopy, vault", cdq.ExampleWords.get_String(wsEn).Text); Assert.AreEqual(0, cdq.ExampleSentences.StringCount); cdq = sem11.QuestionsOS[1]; Assert.AreEqual(1, cdq.Question.StringCount); Assert.AreEqual("(2) What words refer to the air around the earth?", cdq.Question.get_String(wsEn).Text); Assert.AreEqual(1, cdq.ExampleWords.StringCount); Assert.AreEqual("air, atmosphere, airspace, stratosphere, ozone layer", cdq.ExampleWords.get_String(wsEn).Text); Assert.AreEqual(0, cdq.ExampleSentences.StringCount); cdq = sem11.QuestionsOS[2]; Assert.AreEqual(1, cdq.Question.StringCount); Assert.AreEqual("(3) What words are used to refer to the place or area beyond the sky?", cdq.Question.get_String(wsEn).Text); Assert.AreEqual(1, cdq.ExampleWords.StringCount); Assert.AreEqual("heaven, space, outer space, ether, void, solar system", cdq.ExampleWords.get_String(wsEn).Text); Assert.AreEqual(0, cdq.ExampleSentences.StringCount); Assert.AreEqual(2, sem11.SubPossibilitiesOS.Count); ICmSemanticDomain sem111 = sem11.SubPossibilitiesOS[0] as ICmSemanticDomain; Assert.IsNotNull(sem111); Assert.AreEqual(1, sem111.Abbreviation.StringCount); Assert.AreEqual("1.1.1", sem111.Abbreviation.get_String(wsEn).Text); Assert.AreEqual(2, sem111.SubPossibilitiesOS.Count); ICmSemanticDomain sem1111 = sem111.SubPossibilitiesOS[0] as ICmSemanticDomain; Assert.IsNotNull(sem1111); Assert.AreEqual(1, sem1111.Abbreviation.StringCount); Assert.AreEqual("1.1.1.1", sem1111.Abbreviation.get_String(wsEn).Text); Assert.AreEqual(0, sem1111.SubPossibilitiesOS.Count); ICmSemanticDomain sem1112 = sem111.SubPossibilitiesOS[1] as ICmSemanticDomain; Assert.IsNotNull(sem1112); Assert.AreEqual(1, sem1112.Abbreviation.StringCount); Assert.AreEqual("1.1.1.2", sem1112.Abbreviation.get_String(wsEn).Text); Assert.AreEqual(0, sem1112.SubPossibilitiesOS.Count); ICmSemanticDomain sem112 = sem11.SubPossibilitiesOS[1] as ICmSemanticDomain; Assert.IsNotNull(sem112); Assert.AreEqual(1, sem112.Abbreviation.StringCount); Assert.AreEqual("1.1.2", sem112.Abbreviation.get_String(wsEn).Text); Assert.AreEqual(0, sem112.SubPossibilitiesOS.Count); ICmSemanticDomain sem12 = sem1.SubPossibilitiesOS[1] as ICmSemanticDomain; Assert.IsNotNull(sem12); Assert.AreEqual(1, sem12.Abbreviation.StringCount); Assert.AreEqual("1.2", sem12.Abbreviation.get_String(wsEn).Text); Assert.AreEqual(0, sem12.SubPossibilitiesOS.Count); ICmSemanticDomain sem13 = sem1.SubPossibilitiesOS[2] as ICmSemanticDomain; Assert.IsNotNull(sem13); Assert.AreEqual(1, sem13.Abbreviation.StringCount); Assert.AreEqual("1.3", sem13.Abbreviation.get_String(wsEn).Text); Assert.AreEqual(0, sem13.SubPossibilitiesOS.Count); ICmSemanticDomain sem2 = list.PossibilitiesOS[1] as ICmSemanticDomain; Assert.IsNotNull(sem2); Assert.AreEqual(1, sem2.Abbreviation.StringCount); Assert.AreEqual("2", sem2.Abbreviation.get_String(wsEn).Text); Assert.AreEqual(2, sem2.SubPossibilitiesOS.Count); ICmSemanticDomain sem21 = sem2.SubPossibilitiesOS[0] as ICmSemanticDomain; Assert.IsNotNull(sem21); Assert.AreEqual(1, sem21.Abbreviation.StringCount); Assert.AreEqual("2.1", sem21.Abbreviation.get_String(wsEn).Text); Assert.AreEqual(0, sem21.SubPossibilitiesOS.Count); ICmSemanticDomain sem22 = sem2.SubPossibilitiesOS[1] as ICmSemanticDomain; Assert.IsNotNull(sem22); Assert.AreEqual(1, sem22.Abbreviation.StringCount); Assert.AreEqual("2.2", sem22.Abbreviation.get_String(wsEn).Text); Assert.AreEqual(0, sem22.SubPossibilitiesOS.Count); } }
public void ImportList() { var list = m_cache.LangProject.PartsOfSpeechOA; Assert.AreEqual(0, list.PossibilitiesOS.Count); Assert.AreEqual(0, list.Depth); Assert.AreEqual(0, list.WsSelector); Assert.IsFalse(list.IsSorted); Assert.IsFalse(list.UseExtendedFields); Assert.AreEqual(5049, list.ItemClsid); Assert.AreEqual(0, list.Abbreviation.StringCount); Assert.AreEqual(0, list.Name.StringCount); var xl = new XmlList(); using (var reader = new StringReader(s_ksPartsOfSpeechXml)) { xl.ImportList(m_cache.LangProject, "PartsOfSpeech", reader, null); var wsEn = m_cache.WritingSystemFactory.GetWsFromStr("en"); var wsEs = m_cache.WritingSystemFactory.GetWsFromStr("es"); var wsFr = m_cache.WritingSystemFactory.GetWsFromStr("fr"); Assert.AreEqual(2, list.PossibilitiesOS.Count); Assert.AreEqual(127, list.Depth); Assert.AreEqual(-3, list.WsSelector); Assert.IsTrue(list.IsSorted); Assert.IsTrue(list.UseExtendedFields); Assert.AreEqual(5049, list.ItemClsid); Assert.AreEqual(1, list.Abbreviation.StringCount); Assert.AreEqual("Pos", list.Abbreviation.get_String(wsEn).Text); Assert.AreEqual(3, list.Name.StringCount); Assert.AreEqual("Parts Of Speech", list.Name.get_String(wsEn).Text); Assert.AreEqual("Categori\u0301as Grama\u0301ticas", list.Name.get_String(wsEs).Text); Assert.AreEqual("Parties du Discours", list.Name.get_String(wsFr).Text); var adverb = list.PossibilitiesOS[0] as IPartOfSpeech; Assert.IsNotNull(adverb); Assert.AreEqual(6303632, adverb.ForeColor); Assert.AreEqual(-1073741824, adverb.BackColor); Assert.AreEqual(-1073741824, adverb.UnderColor); Assert.AreEqual(1, adverb.UnderStyle); Assert.AreEqual(3, adverb.Abbreviation.StringCount); Assert.AreEqual("adv", adverb.Abbreviation.get_String(wsEn).Text); Assert.AreEqual("adv", adverb.Abbreviation.get_String(wsEs).Text); Assert.AreEqual("adv", adverb.Abbreviation.get_String(wsFr).Text); Assert.AreEqual(3, adverb.Name.StringCount); Assert.AreEqual("Adverb", adverb.Name.get_String(wsEn).Text); Assert.AreEqual("Adverbio", adverb.Name.get_String(wsEs).Text); Assert.AreEqual("Adverbe", adverb.Name.get_String(wsFr).Text); Assert.AreEqual(1, adverb.Description.StringCount); var desc = adverb.Description.get_String(wsEn).Text; Assert.IsTrue(desc.StartsWith("An adverb, narrowly defined, is a part of")); Assert.IsTrue(desc.EndsWith(" the class of the constituent being modified.")); Assert.AreEqual(432, desc.Length); Assert.AreEqual("Adverb", adverb.CatalogSourceId); Assert.AreEqual(0, adverb.SubPossibilitiesOS.Count); var noun = list.PossibilitiesOS[1] as IPartOfSpeech; Assert.IsNotNull(noun); Assert.AreEqual(6303632, noun.ForeColor); Assert.AreEqual(-1073741824, noun.BackColor); Assert.AreEqual(-1073741824, noun.UnderColor); Assert.AreEqual(1, noun.UnderStyle); Assert.AreEqual(3, noun.Abbreviation.StringCount); Assert.AreEqual("n", noun.Abbreviation.get_String(wsEn).Text); Assert.AreEqual("sus", noun.Abbreviation.get_String(wsEs).Text); Assert.AreEqual("n", noun.Abbreviation.get_String(wsFr).Text); Assert.AreEqual(3, noun.Name.StringCount); Assert.AreEqual("Noun", noun.Name.get_String(wsEn).Text); Assert.AreEqual("Nombre", noun.Name.get_String(wsEs).Text); Assert.AreEqual("Nom", noun.Name.get_String(wsFr).Text); Assert.AreEqual(1, noun.Description.StringCount); desc = noun.Description.get_String(wsEn).Text; Assert.IsTrue(desc.StartsWith("A noun is a broad classification of parts of speech")); Assert.IsTrue(desc.EndsWith(" which include substantives and nominals.")); Assert.AreEqual(92, desc.Length); Assert.AreEqual("Noun", noun.CatalogSourceId); Assert.AreEqual(2, noun.SubPossibilitiesOS.Count); var nominal = noun.SubPossibilitiesOS[0] as IPartOfSpeech; Assert.IsNotNull(nominal); Assert.AreEqual(3, nominal.Abbreviation.StringCount); Assert.AreEqual("nom", nominal.Abbreviation.get_String(wsEn).Text); Assert.AreEqual("nom", nominal.Abbreviation.get_String(wsEs).Text); Assert.AreEqual("nom", nominal.Abbreviation.get_String(wsFr).Text); Assert.AreEqual(3, nominal.Name.StringCount); Assert.AreEqual("Nominal", nominal.Name.get_String(wsEn).Text); Assert.AreEqual("Nominal", nominal.Name.get_String(wsEs).Text); Assert.AreEqual("Nominal", nominal.Name.get_String(wsFr).Text); Assert.AreEqual(2, nominal.Description.StringCount); desc = nominal.Description.get_String(wsEn).Text; Assert.IsTrue(desc.StartsWith("A nominal is a part of speech whose members differ")); Assert.IsTrue(desc.EndsWith(" from a substantive but which functions as one.")); Assert.AreEqual(111, desc.Length); desc = nominal.Description.get_String(wsFr).Text; Assert.IsTrue(desc.StartsWith("Un nominal est un constituant syntaxique caractérisé par")); Assert.IsTrue(desc.EndsWith(", ainsi que les syntagmes nominaux et les pronoms.)")); Assert.AreEqual(602, desc.Length); Assert.AreEqual("Nominal", nominal.CatalogSourceId); Assert.AreEqual(1, nominal.SubPossibilitiesOS.Count); var gerund = nominal.SubPossibilitiesOS[0] as IPartOfSpeech; Assert.IsNotNull(gerund); Assert.AreEqual(2, gerund.Abbreviation.StringCount); Assert.AreEqual("ger", gerund.Abbreviation.get_String(wsEn).Text); Assert.AreEqual("ger", gerund.Abbreviation.get_String(wsFr).Text); Assert.AreEqual(2, gerund.Name.StringCount); Assert.AreEqual("Gerund", gerund.Name.get_String(wsEn).Text); Assert.AreEqual("Ge\u0301rundif", gerund.Name.get_String(wsFr).Text); Assert.AreEqual(1, gerund.Description.StringCount); desc = gerund.Description.get_String(wsEn).Text; Assert.IsTrue(desc.StartsWith("A part of speech derived from a verb and used as a noun,")); Assert.IsTrue(desc.EndsWith(" usually restricted to non-finite forms of the verb.")); Assert.AreEqual(108, desc.Length); Assert.AreEqual("Gerund", gerund.CatalogSourceId); Assert.AreEqual(0, gerund.SubPossibilitiesOS.Count); var substantive = noun.SubPossibilitiesOS[1] as IPartOfSpeech; Assert.IsNotNull(substantive); Assert.AreEqual(2, substantive.Abbreviation.StringCount); Assert.AreEqual("subs", substantive.Abbreviation.get_String(wsEn).Text); Assert.AreEqual("subst", substantive.Abbreviation.get_String(wsFr).Text); Assert.AreEqual(2, substantive.Name.StringCount); Assert.AreEqual("Substantive", substantive.Name.get_String(wsEn).Text); Assert.AreEqual("Substantif", substantive.Name.get_String(wsFr).Text); Assert.AreEqual(1, substantive.Description.StringCount); desc = substantive.Description.get_String(wsEn).Text; Assert.IsTrue(desc.StartsWith("A substantive is a member of the syntactic class in which")); Assert.IsTrue(desc.EndsWith(" grammatical gender (in languages which inflect for gender).")); Assert.AreEqual(309, desc.Length); Assert.AreEqual("Substantive", substantive.CatalogSourceId); Assert.AreEqual(0, substantive.SubPossibilitiesOS.Count); } }