public void ThesaurusBuildsNormalizedSynonymToCanonicalFormDictionaryAndIgnoresEmptyLemmas() { const string canonicalAcronym = "acronym"; const string canonicalMicrosoft = "Microsoft"; var synonyms = new Thesaurus(new[] { new[] { canonicalAcronym, "acornym", "acronyms" }, Array.Empty <string>(), new[] { canonicalMicrosoft, "Microsoft Corporation", "Microsoft corp.", "MSFT" } }).Synonyms; Assert.AreEqual(7, synonyms.Count()); Assert.AreEqual(canonicalAcronym, synonyms["acronym"]); Assert.AreEqual(canonicalAcronym, synonyms["acornym"]); Assert.AreEqual(canonicalAcronym, synonyms["acronyms"]); Assert.AreEqual(canonicalMicrosoft, synonyms["microsoft"]); Assert.AreEqual(canonicalMicrosoft, synonyms["microsoftcorporation"]); Assert.AreEqual(canonicalMicrosoft, synonyms["microsoftcorp"]); Assert.AreEqual(canonicalMicrosoft, synonyms["msft"]); }