public void Start()
        {
            try
            {
                String   writtenWord   = Graphic.GetWords();
                string[] splittedWords = writtenWord.Split(' ', '\t');

                List <String> toFind = splittedWords.Select(x => x.ToLower()).ToList();

                /*
                 * foreach (String word in splittedWords)
                 * {
                 *  String lowerCaseWord = word.ToLower();
                 *  toFind.Add(lowerCaseWord);
                 * }
                 */

                List <string> findedWords = null;
                if (toFind.Count > 0)
                {
                    findedWords = Solver.FindWords(toFind);
                }

                Graphic.WriteWords(findedWords);
            } catch (Exception e)
            {
                Graphic.ErrorMessage(e.Message);
            }
        }
Beispiel #2
0
        public void FindAnagrams_NoCachedAnagrams_ShouldFindAllAnagrams()
        {
            _anagramSolver.FindWords(Arg.Any <List <string> >()).Returns(new List <string>()
            {
                "alus"
            });
            _cachedWordsRepository.GetCachedWordID(Arg.Any <string>()).ReturnsForAnyArgs(x => null);

            var result = _cachedWordsService.FindAnagrams("sula");

            result.ShouldBe(new List <string> {
                "alus"
            });
        }
        public List <string> FindAnagrams(string word)
        {
            List <string> anagrams = FindCachedAnagramsString(word);

            if (anagrams == null)
            {
                anagrams = Solver.FindWords(new List <String>()
                {
                    word
                });
                InsertCashedWords(word, anagrams);
            }
            return(anagrams);
        }
Beispiel #4
0
        public void Start()
        {
            ArrayList words       = DataReader.GetData();
            String    writtenWord = Graphic.GetWords();

            string[] splittedWords = writtenWord.Split(' ', '\t');

            ArrayList toFind = new ArrayList();

            foreach (String word in splittedWords)
            {
                String lowerCaseWord = word.ToLower();
                toFind.Add(lowerCaseWord);
            }

            List <string> findedWords = null;

            if (toFind.Count > 0)
            {
                findedWords = Solver.FindWords(words, toFind);
            }

            Graphic.WriteWords(findedWords);
        }