Ejemplo n.º 1
0
        private static void AssertFailedTestCase(string parameter, string expression, string expectedmessage)
        {
            bool isException = false;

            try
            {
                List <ExpressionItem> expressionItemList = MakeExpressionItemListForTest();
                foreach (ExpressionItem item in expressionItemList)
                {
                    if (parameter.ToLower() == item.Parameter.ToLower())
                    {
                        item.Expression = expression;
                    }
                }
                CheckExpressionItem ce = new CheckExpressionItem(parameter, "A", expressionItemList);
                ce.IsDiffUpperOrLower = _IsDiffUpperOrLower;
                ce.CheckExpressionItemValid();
            }
            catch (Exception ex)
            {
                Assert.AreEqual(expectedmessage, ex.Message);
                isException = true;
            }
            Assert.AreEqual(isException, true);
        }
Ejemplo n.º 2
0
 public void FailedTest()
 {
     try
     {
         CheckExpressionItem ce = new CheckExpressionItem("A1", "A", null);
         ce.CheckExpressionItemValid();
     }
     catch (Exception ex)
     {
         Assert.AreEqual("A1没有定义,系统无法解释", ex.Message);
     }
 }
Ejemplo n.º 3
0
        private static void AssertSuccessTestCase(string parameter, string expression)
        {
            List <ExpressionItem> expressionItemList = MakeExpressionItemListForTest();

            foreach (ExpressionItem item in expressionItemList)
            {
                if (parameter.ToLower() == item.Parameter.ToLower())
                {
                    item.Expression = expression;
                }
            }
            CheckExpressionItem ce = new CheckExpressionItem(parameter, "A", expressionItemList);

            ce.IsDiffUpperOrLower = _IsDiffUpperOrLower;
            Assert.AreEqual(ce.CheckExpressionItemValid(), true);
        }
Ejemplo n.º 4
0
        /// <summary>
        /// 单项验证
        /// </summary>
        /// <param name="accountSetItemList"></param>
        /// <returns></returns>
        public bool CheckItemValidation(List <AccountSetItem> accountSetItemList)
        {
            //if (_CardPropertyPara == null)
            //{
            //    throw new ApplicationException(MyCmmiUtility._CardPropertyPara_IsNull);
            //}
            if (accountSetItemList == null)
            {
                accountSetItemList = new List <AccountSetItem>();
            }
            if (_AccountSetPara == null || _AccountSetPara.MantissaRound == null)
            {
                _AccountSetPara.MantissaRound = MantissaRoundEnum.AllMantissaRound;
            }
            CheckExpressionItem checkExpressionItem =
                new CheckExpressionItem(ParameterNameTitle + _AccountSetPara.AccountSetParaID, ParameterNameTitle,
                                        TurnExpressionItem.TurnToExpressionItemList(ParameterNameTitle,
                                                                                    accountSetItemList,
                                                                                    TurnExpressionItem.Operation.Check));

            try
            {
                checkExpressionItem.TaxFunction +=
                    new TaxFunction(new IndividualIncomeTax(0, 0, new List <TaxBand>())).doFunction;
                checkExpressionItem.TaxWithPointFunction +=
                    new TaxWithPointFunction(new IndividualIncomeTax(0, 0, new List <TaxBand>())).doFunction;
                checkExpressionItem.AnnualBonusTaxFunction +=
                    new AnnualBonusTaxFunction(new IndividualIncomeTax(0, 0, new List <TaxBand>())).doFunction;
                checkExpressionItem.ForeignTaxFunction +=
                    new ForeignTaxFunction(new IndividualIncomeTax(0, 0, new List <TaxBand>())).doFunction;
                checkExpressionItem.AnnualBonusForeignTaxFunction +=
                    new AnnualBonusForeignTaxFunction(new IndividualIncomeTax(0, 0, new List <TaxBand>())).doFunction;
                checkExpressionItem.IsSalaryEndDateMonthEquelFunction +=
                    new IsSalaryEndDateMonthEquelFunction(12).doFunction;
                checkExpressionItem.DoubleSalaryFunction +=
                    new DoubleSalaryFunction(new List <EmployeeSalaryHistory>()).doFunction;
                return(checkExpressionItem.CheckExpressionItemValid());
            }
            catch (Exception ex)
            {
                throw new Exception(ex.Message);
            }
        }
Ejemplo n.º 5
0
        /// <summary>
        /// 如果检查失败,则抛出异常,A99为一个不会出现的序列
        /// </summary>
        public static void CheckFormula(string formula)
        {
            if (formula.Contains(AssessBindItemEnum.ImposibleID))
            {
                throw new Exception("出现死循环");
            }
            Random rd = new Random();
            List <ExpressionItem> items = new List <ExpressionItem>();

            foreach (AssessBindItemEnum itemEnum in AssessBindItemEnum.GetAllAssessBindItemEnum())
            {
                items.Add(new ExpressionItem(string.Format("A{0}", itemEnum.ID), rd.NextDouble().ToString(), EnumDataType.Number));
            }
            items.Add(new ExpressionItem(AssessBindItemEnum.ImposibleID, formula, EnumDataType.Number));
            CheckExpressionItem checkExpressionItem =
                new CheckExpressionItem(AssessBindItemEnum.ImposibleID, "A", items);

            checkExpressionItem.CheckExpressionItemValid();
        }