コード例 #1
0
        public void CreateStack_DoubleOperator_Error04Returned()
        {
            Analaizer.expression = "(10++2)";
            ArrayList array = Analaizer.CreateStack();

            Assert.AreEqual(array, null);
        }
コード例 #2
0
        private void buttonSum_Click(object sender, EventArgs e)
        {
            Analaizer.expression = textBox1.Text;


            if (!Analaizer.CheckCurrency())
            {
                MessageBox.Show(CalcClas.Calculator.lastError);
            }

            if (Analaizer.Format() == CalcClas.Calculator.lastError)
            {
                MessageBox.Show(CalcClas.Calculator.lastError);
            }



            if (Analaizer.CreateStack() == null)
            {
                MessageBox.Show(CalcClas.Calculator.lastError);
            }
            else
            {
                label3.Text = Analaizer.RunEstimate(Analaizer.CreateStack());
            }
        }
コード例 #3
0
 public void CreateStack_6odm_Exception()
 {
     // arrange
     Analaizer.expression = "6odm";
     // action
     var actual = Analaizer.CreateStack();
 }
コード例 #4
0
 public void CreateStack_doubleMult_Exception()
 {
     // arrange
     Analaizer.expression = "6+(5-2)**3+2";
     // action
     var actual = Analaizer.CreateStack();
 }
コード例 #5
0
 public void CreateStack_31NumbersAndOperators_Exception()
 {
     // arrange
     Analaizer.expression = "1+3-5*7+9/11+13+15+1+3-5*7+9/11+13+15";
     // action
     var actual = Analaizer.CreateStack();
 }
コード例 #6
0
 public void CreateStack_plusAndMinus_Exception()
 {
     // arrange
     Analaizer.expression = "6+-(5-2)*3+2";
     // action
     var actual = Analaizer.CreateStack();
 }
コード例 #7
0
 public void CreateStack_otherSymbol_Exception()
 {
     // arrange
     Analaizer.expression = "6+<(5-2)*3)+2/";
     // action
     var actual = Analaizer.CreateStack();
 }
コード例 #8
0
 public void CreateStack_incompleteSymbolExpression_Exception()
 {
     // arrange
     Analaizer.expression = "6+((5-2)*3)+2/";
     // action
     var actual = Analaizer.CreateStack();
 }
コード例 #9
0
 public void CreateStack_closeBracketsMoreThanOpen_Exception()
 {
     // arrange
     Analaizer.expression = "(6+(5-2)*3)+2)*(12-8)";
     // action
     var actual = Analaizer.CreateStack();
 }
コード例 #10
0
 public void CreateStack_4brackets_Exception()
 {
     // arrange
     Analaizer.expression = "(6+((5-2)*3)+2)*(12-8)";
     // action
     var actual = Analaizer.CreateStack();
 }
コード例 #11
0
        public void RunEstimate()
        {
            Analaizer.expression = "(234+3)-34";
            var r = Analaizer.RunEstimate((string[])Analaizer.CreateStack().ToArray(typeof(string)));

            Assert.AreEqual("203", r);
        }
コード例 #12
0
        public void RunEstimate_sum5and2_retyrned17()
        {
            // arrange
            Analaizer.expression = "6+(5-2)*3+2";
            string expected = "17";

            // action
            Analaizer.CreateStack();
            var actual = Analaizer.RunEstimate(Analaizer.CreateStack());

            // assert
            Assert.AreEqual(expected, actual, $"{Analaizer.expression} should have been {expected}!");
        }
コード例 #13
0
        public void CreateStack_65536symbol_Exception()
        {
            // arrange
            string tmp = "1234567890+1234567890+123456789+";

            for (int i = 0; i < 2048; i++)
            {
                Analaizer.expression += tmp;
            }
            Analaizer.expression += "0";
            // action
            var actual = Analaizer.CreateStack();
        }
コード例 #14
0
        public void CreateStack()
        {
            Analaizer.expression = "(234+3)-34";
            var r = Analaizer.CreateStack();

            System.Collections.ArrayList array = new System.Collections.ArrayList();
            array.Add("234");
            array.Add("3");
            array.Add("+");
            array.Add("34");
            array.Add("-");
            Assert.AreEqual(array.Count, r.Count);
        }
コード例 #15
0
        public void CreateStackCollectionEqual_EqualReturned()
        {
            // arrange
            Analaizer.expression = "6+(5-2)*3+2";
            ArrayList expected = new ArrayList()
            {
                "6", "5", "2", "-", "3", "*", "+", "2", "+"
            };
            // action
            var actual = Analaizer.CreateStack();

            // assert
            CollectionAssert.AreEqual(expected, actual);
        }
コード例 #16
0
        public void CreateStack_SyntaxError_Error03()
        {
            Analaizer.expression = "(5(+1))";

            Assert.AreEqual(Analaizer.CreateStack().Count, 0);
        }