Ejemplo n.º 1
0
        public void Should_Not_Return_Anagrams_Shorter_Then_Specified_By_Config(string userInput)
        {
            AnagramSolver    anagramSolver = new AnagramSolver(config);
            List <WordModel> anagrams      = anagramSolver.GetAnagrams(userInput, wordsRepository.GetWords());

            Assert.IsTrue(anagrams.All(anagram => anagram.word.Length > config.Value.minWordLength));
        }
Ejemplo n.º 2
0
        static void Main(string[] args)
        {
            string userInputString = "";

            foreach (string word in args)
            {
                userInputString += word;
            }

            int minWordLength   = Int32.Parse(ConfigurationManager.AppSettings["minWordLength"]);
            int maxResultsLenth = Int32.Parse(ConfigurationManager.AppSettings["maxResultsLenth"]);

            AnagramConfiguration anagramConfiguration = new AnagramConfiguration(minWordLength, maxResultsLenth);

            IWordsRepository wordsRepository = new WordsRepository();

            IAnagramSolver anagramSolver = new AnagramSolver(wordsRepository, anagramConfiguration);

            List <string> anagrams = anagramSolver.GetAnagrams(userInputString);

            foreach (string anagram in anagrams)
            {
                Console.WriteLine(anagram);
            }

            Thread.Sleep(2000);
        }
Ejemplo n.º 3
0
        public void Should_Return_Two_Anagrams(string userInput)
        {
            AnagramSolver    anagramSolver = new AnagramSolver(config);
            List <WordModel> anagrams      = anagramSolver.GetAnagrams(userInput, wordsRepository.GetWords());

            Assert.IsTrue(anagrams.Count() == 2);
        }
        public void TestIsInsideSpaced()
        {
            var ags = new AnagramSolver("ailnooprssttttuuwy", new List <string>());

            Assert.IsTrue(ags.isInsideSpace("iloprstttu")); // Trustpilot!
            Assert.IsTrue(ags.isInsideSpace("wyioloprstttu"));
            Assert.IsTrue(ags.isInsideSpace(""));
            Assert.IsFalse(ags.isInsideSpace("qlk"));
        }
Ejemplo n.º 5
0
        public void SetCorrectMaxListLengthValueThroughConstructors()
        {
            int           maxListLength = Int32.Parse(Config["maxListLength2"]);
            AnagramSolver Solver1       = new AnagramSolver(maxListLength);
            AnagramSolver Solver2       = new AnagramSolver(maxListLength);

            Assert.AreEqual(maxListLength, Solver1.MaxListLen);
            Assert.AreEqual(maxListLength, Solver2.MaxListLen);
        }
Ejemplo n.º 6
0
        public void DoNotReturnTestWordAsAnagram()
        {
            AnagramSolver Solver = new AnagramSolver(Path);
            string        word   = Config["testWord3"];

            IList <string> anagrams = Solver.GetAnagrams(word);

            Assert.IsFalse(anagrams.Contains(word));
        }
Ejemplo n.º 7
0
        public void ReturnNullIfNoWordsWhereFound()
        {
            AnagramSolver Solver = new AnagramSolver(Path);
            string        word   = Config["testWord2"];

            IList <string> anagrams = Solver.GetAnagrams(word);

            Assert.IsNull(anagrams);
        }
Ejemplo n.º 8
0
        public void ReturnListOfCorrectLength()
        {
            int           maxListLength = Int32.Parse(Config["maxListLength1"]);
            AnagramSolver Solver        = new AnagramSolver(maxListLength, Path);
            string        word          = Config["testWord1"];

            IList <string> anagrams = Solver.GetAnagrams(word);

            Assert.IsTrue(anagrams.Count == maxListLength);
        }
Ejemplo n.º 9
0
        public void FindCorrectAnagramsForGivenWord()
        {
            AnagramSolver Solver = new AnagramSolver(Path);
            string        word   = Config["testWord1"];

            IList <string> anagrams = Solver.GetAnagrams(word);

            Assert.IsTrue(anagrams.Contains("dugnas"));
            Assert.IsTrue(anagrams.Contains("gandus"));
        }
Ejemplo n.º 10
0
        public void TestTwoWord()
        {
            var words = new List <String>();

            words.Add("bird");
            words.Add("word");

            // Bird is the word!
            var ag      = new AnagramSolver("bird word", words);
            var anagram = ag.FindAnagram("80584d36adfcd7c41cf421f10aa408aa");

            Assert.AreEqual("word bird", anagram);
        }
Ejemplo n.º 11
0
        public void TestTwoWord2()
        {
            var words = new List <String>();

            words.Add("bird");
            words.Add("word");
            words.Add("wrod");

            // Bird is the word!
            var ag      = new AnagramSolver("bird word", words);
            var anagram = ag.FindAnagram("843281363c1d2406e9479ebad2c2e2b1");

            Assert.AreEqual("bird wrod", anagram);
        }
Ejemplo n.º 12
0
        static void Main(string[] args)
        {
            //IFileRepository textFileLoader = new TextFileRepository();
            ITextRepository wordRepository = new TextWordRepository();
            IAnagramSolver  anagramSolver  = new AnagramSolver(wordRepository);
            List <string>   allWords       = wordRepository.GetWords();

            allWords = allWords.Distinct().ToList();

            string connectionString = "Server=(localdb)\\MSSQLLocalDB; Database=CFDB_AnagramSolver";

            //  ManageDataBase.DeleteAll(connectionString);
            //     ManageDataBase.Insert(allWords, connectionString);
        }
Ejemplo n.º 13
0
        public void TestSingleWord()
        {
            var words = new List <String>();

            words.Add("rbid");
            words.Add("irdb"); // c75e59ac055236b9b7f27a9a82213b8a
            words.Add("bdir");
            words.Add("birg");

            // Bird is the word!
            var ag      = new AnagramSolver("bird", words);
            var anagram = ag.FindAnagram("c75e59ac055236b9b7f27a9a82213b8a");

            Assert.AreEqual("irdb", anagram);
        }
Ejemplo n.º 14
0
 public void TestCleanAndSort()
 {
     Assert.AreEqual("abcde", AnagramSolver.cleanAndSort("baced"));
     Assert.AreEqual("abcde", AnagramSolver.cleanAndSort("bca  ed"));
     Assert.AreEqual("abcde", AnagramSolver.cleanAndSort("   bca  e         d"));
 }