示例#1
0
        public void CheckAnagram_IsWordAnAnagram_True()
        {
            //Arange
            string  targetString  = "tea";
            Anagram targetAnagram = new Anagram(targetString);
            string  testString01  = "eat";
            string  testString02  = "eater";
            string  testString03  = "cat";
            Anagram testAnagram01 = new Anagram(testString01);

            testAnagram01.Save(testString01);
            Anagram testAnagram02 = new Anagram(testString02);

            testAnagram02.Save(testString02);
            Anagram testAnagram03 = new Anagram(testString03);

            testAnagram03.Save(testString03);

            //Act
            bool result = targetAnagram.CheckAnagram(targetString, 0);


            //Assert
            Assert.AreEqual(true, result);
        }
示例#2
0
        public void Anagram_ChecksForAnagram_False()
        {
            var     inputWord    = "word";
            var     inputAnagram = "dog";
            Anagram testAnagram  = new Anagram(inputWord, inputAnagram);

            Assert.Equal(false, testAnagram.CheckAnagram());
        }
示例#3
0
        public void Anagram_ChecksForPartialAnagram_False()
        {
            var     inputWord    = "bread";
            var     inputAnagram = "reedddddddddddddddd";
            Anagram testAnagram  = new Anagram(inputWord, inputAnagram);

            Assert.Equal(false, testAnagram.CheckAnagram());
        }
示例#4
0
        public void Anagram_ChecksForAnagram_True()
        {
            var     inputWord    = "word";
            var     inputAnagram = "drow";
            Anagram testAnagram  = new Anagram(inputWord, inputAnagram);

            Assert.Equal(true, testAnagram.CheckAnagram());
        }
示例#5
0
        public void TestAnagram()
        {
            Assert.IsTrue(a.CheckAnagram("aabb", "abab"));
            string string1 = "acb";
            string string2 = "abc";

            Assert.IsTrue(a.CheckAnagram2(string1, string2));
        }
示例#6
0
        public void IsAnagram_TargetMultipleWords_FalseTrue()
        {
            Anagram       testAnagram = new Anagram();
            List <string> words       = new List <string> {
                "bagel", "beard"
            };
            List <bool> testList = new List <bool> {
                false, true
            };

            CollectionAssert.AreEqual(testList, testAnagram.CheckAnagram("bread", words));
        }
示例#7
0
        public void IsAnagram_TargetWordAnagram_True()
        {
            Anagram       testAnagram = new Anagram();
            List <string> words       = new List <string> {
                "beard"
            };
            List <bool> testList = new List <bool> {
                true
            };

            CollectionAssert.AreEqual(testList, testAnagram.CheckAnagram("bread", words));
        }
示例#8
0
        public void IsAnagram_TargetWordDifferent_False()
        {
            Anagram       testAnagram = new Anagram();
            List <string> words       = new List <string> {
                "bagel"
            };
            List <bool> testList = new List <bool> {
                false
            };

            CollectionAssert.AreEqual(testList, testAnagram.CheckAnagram("bread", words));
        }
示例#9
0
        public void CheckAnagram_ReturnsAnagram_Cat()
        {
            Anagram       testAnagram = new Anagram("top", "cat");
            List <string> expected    = new List <string> {
                "not an anagram"
            };

            expected.ForEach(Console.WriteLine);
            List <string> actual = testAnagram.CheckAnagram();

            actual.ForEach(Console.WriteLine);
            CollectionAssert.AreEqual(expected, actual);
        }
示例#10
0
        public static void Main()
        {
            Console.WriteLine("Would you like to play the Anagram Game? (Y/N)");
            string initial = Console.ReadLine().ToLower();

            if (initial == "y")
            {
                //prompt user for target word, convert to lower case, and store in object
                Console.WriteLine("Enter a word to test for Anagram.");
                string  targetString  = Console.ReadLine().ToLower();
                Anagram targetAnagram = new Anagram(targetString);

                //create changing variables
                Anagram testAnagram = new Anagram();
                string  testString;
                bool    prompt = true;

                //continually prompt user for test words until they quit
                do
                {
                    Console.WriteLine("Enter a word to compare: ");
                    testString = Console.ReadLine().ToLower();
                    testAnagram.SetWordString(testString);
                    testAnagram.Save(testString);

                    Console.WriteLine("Enter another word? (Y/N)");
                    string repeat = Console.ReadLine().ToLower();

                    if (repeat != "y")
                    {
                        prompt = false;
                    }
                } while (prompt == true);

                //get list all test words have been added to
                List <string> testList = Anagram.GetAll();

                //check if each test word in list is an anagram of the target word
                for (int i = 0; i < testList.Count; i++)
                {
                    if (targetAnagram.CheckAnagram(targetString, i))
                    {
                        Console.WriteLine(testList[i] + " is an anagram of " + targetString + ".");
                    }
                    else
                    {
                        Console.WriteLine("{0} is not an anagram of {1}.", testList[i], targetString);
                    }
                }

                //prompt the user to play again
                Console.WriteLine("Do you want to play again (Y/N)");
                string playAgain = Console.ReadLine().ToLower();
                if (playAgain == "y")
                {
                    Anagram.ClearAll();
                    Main();
                }
                else
                {
                    Console.WriteLine("See you later!!");
                }
            }
            else
            {
                Console.WriteLine("Goodbye!");
            }
        }
示例#11
0
        public void IsString()
        {
            Anagram newAnagram = new Anagram();

            Assert.Equal("iceman", newAnagram.CheckAnagram("cinema", "iceman"));
        }