示例#1
0
 public void AtoiTests_NormalCases()
 {
     Assert.AreEqual(1234567, Atoi.Convert("1234567"));
     Assert.AreEqual(1234567, Atoi.Convert("+1234567"));
     Assert.AreEqual(-1234567, Atoi.Convert("-1234567"));
     Assert.AreEqual(34567, Atoi.Convert("0034567"));
     Assert.AreEqual(123, Atoi.Convert("+123dsds4567"));
 }
示例#2
0
        public void AtoiV1_Number()
        {
            string str = "45";

            var atoi   = new Atoi();
            int result = atoi.MyAtoiV1(str);

            Assert.AreEqual(45, result);
        }
示例#3
0
        public void AtoiV3_NegativeNumber()
        {
            string str = "   -45";

            var atoi   = new Atoi();
            int result = atoi.MyAtoiV3(str);

            Assert.AreEqual(-45, result);
        }
示例#4
0
        public void AtoiV3_LetterFirst()
        {
            string str = "   a 45";

            var atoi   = new Atoi();
            int result = atoi.MyAtoiV3(str);

            Assert.AreEqual(0, result);
        }
示例#5
0
        public void AtoiV2_LetterAfterSign()
        {
            string str = " -a 45";

            var atoi   = new Atoi();
            int result = atoi.MyAtoiV2(str);

            Assert.AreEqual(0, result);
        }
示例#6
0
        public void AtoiV3_ZerosFirst()
        {
            string str = "     000002147483645";

            var atoi   = new Atoi();
            int result = atoi.MyAtoiV3(str);

            Assert.AreEqual(2147483645, result);
        }
示例#7
0
        public void AtoiV3_MoreThanMax()
        {
            string str = "2147483648";

            var atoi   = new Atoi();
            int result = atoi.MyAtoiV3(str);

            Assert.AreEqual(2147483647, result);
        }
示例#8
0
        public void AtoiV3_SignAfterDigit()
        {
            string str = "1-5";

            var atoi   = new Atoi();
            int result = atoi.MyAtoiV3(str);

            Assert.AreEqual(1, result);
        }
示例#9
0
 public void AtoiTests_CornerCases()
 {
     Assert.AreEqual(0, Atoi.Convert(null));
     Assert.AreEqual(0, Atoi.Convert(""));
     Assert.AreEqual(0, Atoi.Convert("       "));
     Assert.AreEqual(1, Atoi.Convert("       1"));
     Assert.AreEqual(1, Atoi.Convert("       1abc"));
     Assert.AreEqual(0, Atoi.Convert("       ab1"));
     Assert.AreEqual(1, Atoi.Convert("       +1"));
     Assert.AreEqual(-1, Atoi.Convert("       -1"));
     Assert.AreEqual(1, Atoi.Convert("+1"));
     Assert.AreEqual(-1, Atoi.Convert("-1"));
 }
示例#10
0
        public void Case6()
        {
            var r = new Atoi().MyAtoi("  -0012a42");

            Assert.AreEqual(-12, r);
        }
示例#11
0
        public void Case5()
        {
            var r = new Atoi().MyAtoi("-91283472332");

            Assert.AreEqual(-2147483648, r);
        }
示例#12
0
        public void Case4()
        {
            var r = new Atoi().MyAtoi("words and 987");

            Assert.AreEqual(0, r);
        }
示例#13
0
        public void Case3()
        {
            var r = new Atoi().MyAtoi("4193 with words");

            Assert.AreEqual(4193, r);
        }
示例#14
0
        public void Case2()
        {
            var r = new Atoi().MyAtoi("   -42");

            Assert.AreEqual(-42, r);
        }
示例#15
0
 public void Test(string input, int result)
 {
     Assert.Equal(result, Atoi.Convert(input));
 }
示例#16
0
 public void AtoiTests_OverflowCases()
 {
     Assert.AreEqual(int.MaxValue, Atoi.Convert("0909809809809"));
 }
示例#17
0
        public void Case7()
        {
            var r = new Atoi().MyAtoi("-5-");

            Assert.AreEqual(-5, r);
        }
示例#18
0
        public void Case1()
        {
            var r = new Atoi().MyAtoi("42");

            Assert.AreEqual(42, r);
        }
示例#19
0
        public void Test()
        {
            int result = new Atoi().MyAtoi("0-1");

            Assert.Equal(0, result);
        }