示例#1
0
        public void ValidaExpresionLogica_Test()
        {
            var cadena    = "<=20||>=40";
            var resultado = ExpresionRegular.ValidarExpresionLogica(cadena);

            Assert.IsTrue(resultado.Success);
        }
示例#2
0
        public void ValidaExpresionLogica_Correcta_ProposisionCompuesta_Menor_AND_Mayor()
        {
            var cadena    = "<20&&>40";
            var resultado = ExpresionRegular.ValidarExpresionLogica(cadena);

            Assert.IsTrue(resultado.Success);
        }
示例#3
0
        public void ValidaExpresionLogica_Correcta_ProposisionCompuesta_MenorIgual_OR_MayorIgual()
        {
            var cadena    = "<=20||>=40";
            var resultado = ExpresionRegular.ValidarExpresionLogica(cadena);

            Assert.IsTrue(resultado.Success);
        }
示例#4
0
        public void ValidaExpresionLogica_Correcta_ProposisionSimple_Diferente()
        {
            var cadena    = "!=20";
            var resultado = ExpresionRegular.ValidarExpresionLogica(cadena);

            Assert.IsTrue(resultado.Success);
        }
示例#5
0
        internal ExpresionLogica(string cadena)
        {
            Proposiciones = new List <FiltroExpresion>();
            cadena        = ExpresionRegular.EliminarEspacio(cadena);
            var match = ExpresionRegular.ValidarExpresionLogica(cadena);

            EsExpresionLogica = match.Success;

            if (EsExpresionLogica)
            {
                var evaluador = new EvaluadorPreposicion(match);
                (Proposiciones, OperadorLogico) = evaluador.ValidarCadena();
            }
        }