public void SenseSearch_OneSearchKey()
        {
            //Setup
            const string searchString = "sun";
            const string expectedNum1 = "1.1.8";             // bucket1 match 'sun'
            const string expectedNum2 = "8.3.3";             // bucket2 match 'sunshine', under 'Light'
            IEnumerable <ICmSemanticDomain> partialMatches;
            var entry = CreateLexEntry("soleil", searchString);
            var sense = entry.SensesOS[0];

            // SUT
            var result = m_semdomRepo.FindDomainsThatMatchWordsIn(sense, out partialMatches);

            // Verification
            var resultList   = result.ToList();
            var partialsList = partialMatches.ToList();
            var cresult      = resultList.Count;
            var cpartials    = partialsList.Count;

            Assert.AreEqual(1, cresult, WRONG_NUMBER_OF_MATCHES);
            Assert.AreEqual(1, cpartials, WRONG_NUMBER_OF_MATCHES);
            Assert.AreEqual(expectedNum1, resultList[0].Abbreviation.AnalysisDefaultWritingSystem.Text,
                            WRONG_SEMDOM_NUMBER);
            Assert.AreEqual(expectedNum2, partialsList[0].Abbreviation.AnalysisDefaultWritingSystem.Text,
                            WRONG_SEMDOM_NUMBER);
        }
Esempio n. 2
0
        private void OnSuggestClicked(object sender, EventArgs e)
        {
            IEnumerable <ICmSemanticDomain> partialMatches;
            var semDomainsToShow = m_semdomRepo.FindDomainsThatMatchWordsIn(Sense, out partialMatches);

            foreach (var domain in semDomainsToShow)
            {
                SemanticDomainSelectionUtility.AdjustSelectedDomainList(domain, true, selectedDomainsList);
            }
            // Add all the partial matches to the list also, but do not check them by default
            foreach (var domainMatch in partialMatches)
            {
                SemanticDomainSelectionUtility.AdjustSelectedDomainList(domainMatch, false, selectedDomainsList);
            }
        }