コード例 #1
0
 def test_evaluate_2(self):
     """evaluate: test de evaluacion 2 con resultado correcto y expresion con parentesis"""
     expr = '(a>3 and b<7) and (c=0 or d=1)'
     values = {'a': 5, 'b': 5, 'c': 0, 'd': 2}
     ev = ExpressionEvaluator(expr)
     res = ev.evaluate(values)
     assert_true(res)
コード例 #2
0
 def test_evaluate_16(self):
     """evaluate: test de evaluacion 16 con resultado correcto devolviendo literal"""
     expr = '"hola"'
     values = {}
     ev = ExpressionEvaluator(expr)
     res = ev.evaluate(values)
     assert_equal(res, 'hola')
コード例 #3
0
 def test_evaluate_1(self):
     """evaluate: test de evaluacion 1 con resultado correcto y expresion simple"""
     expr = 'a>3 and b<=7'
     values = {'a': 5, 'b': 5, 'c': 0, 'd': 2}
     ev = ExpressionEvaluator(expr)
     res = ev.evaluate(values)
     assert_true(res)
コード例 #4
0
 def test_evaluate_10(self):
     """evaluate: test de evaluacion 10 con resultado correcto y expresion algebraica compleja"""
     expr = '(3+5)*a-4*3+10/5'
     values = {'a': 2}
     ev = ExpressionEvaluator(expr)
     res = ev.evaluate(values)
     assert_equal(6, res)
コード例 #5
0
 def test_evaluate_11(self):
     """evaluate: test de evaluacion 11 con resultado correcto y expresion mixta booleana y algebraica"""
     expr = '(a+3)<b'
     values = {'a': 2, 'b': 10}
     ev = ExpressionEvaluator(expr)
     res = ev.evaluate(values)
     assert_true(res)
コード例 #6
0
 def test_evaluate_8(self):
     """evaluate: test de evaluacion 8 con resultado correcto y expresion icontains"""
     expr = '"HOLAMUNDO" icontains "hola"'
     values = dict()
     ev = ExpressionEvaluator(expr)
     res = ev.evaluate(values)
     assert_true(res)
コード例 #7
0
 def test_evaluate_4(self):
     """evaluate: test de evaluacion 4 con resultado correcto y expresion con funcion simple, operadores
     de un argumento y comparaciones con booleanos"""
     expr = 'length[a]=9 and (not xxx and a contains "hola") and (b<10 or c=6) and xxx=False'
     values = {'a': 'holamundo', 'b': 8, 'c': 6, 'xxx': False}
     ev = ExpressionEvaluator(expr)
     res = ev.evaluate(values)
     assert_true(res)
コード例 #8
0
 def test_evaluate_9(self):
     """evaluate: test de evaluacion 9 con resultado correcto y expresion algebraica simple"""
     expr = '3+5'
     # values = {'a': 'holamundo', 'b': 8, 'c': 6, 'xxx': False}
     values = dict()
     ev = ExpressionEvaluator(expr)
     res = ev.evaluate(values)
     assert_equal(8, res)
コード例 #9
0
 def test_evaluate_7(self):
     """evaluate: test de evaluacion 7 con resultado correcto y expresion con funciones multiples, operadores
     de un argumento y comparaciones con booleanos"""
     expr = 'have_passed_time["2017-01-01 00:00:00", 60, weeks]'
     values = {'a': 'holamundo', 'b': 8, 'c': 6, 'xxx': False}
     ev = ExpressionEvaluator(expr)
     res = ev.evaluate(values)
     assert_true(res)
コード例 #10
0
 def test_evaluate_6(self):
     """evaluate: test de evaluacion 6 con resultado correcto y expresion con funciones multiples, operadores
     de un argumento y comparaciones con booleanos"""
     expr = 'length["hola"]'
     values = {'a': 'holamundo', 'b': 8, 'c': 6, 'xxx': False}
     ev = ExpressionEvaluator(expr)
     res = ev.evaluate(values)
     assert_true(res)
コード例 #11
0
 def test_evaluate_12(self):
     """evaluate: test de evaluacion 12 con resultado correcto y expresion con funciones multiples, operadores
     de un argumento, expresiones algebraicas y comparaciones con booleanos"""
     expr = 'length[a]=9 and (not xxx and a contains "hola") and (b<10 or c=6) and (xxx=False and ' \
            'True=have_passed_time["2017-01-01 00:00:00",60,weeks]) and ((2*c)<b or (b+c)=50)'
     values = {'a': 'holamundo', 'b': 8, 'c': 6, 'xxx': False}
     ev = ExpressionEvaluator(expr)
     res = ev.evaluate(values)
     assert_false(res)
コード例 #12
0
 def evaluate(self, expr: str, values: dict, insert_additional_data: bool):
     ev = ExpressionEvaluator(expr)
     ev.set_additional_data(
         AdditionalServerData('local', self.ssh_host, self.ssh_port,
                              self.ssh_username, self.ssh_password))
     ev.add_function_package(
         'common.infra_modules.monit_module.conditions_monit_module')
     result = ev.evaluate(values)
     return result
コード例 #13
0
 def test_evaluate_15(self):
     """evaluate: test de evaluacion 15 con resultado incorrecto por variable no encontrada"""
     expr = 'a>3 and b=7'
     values = {'a': 5}
     ev = ExpressionEvaluator(expr)
     ev.evaluate(values)
コード例 #14
0
 def test_evaluate_14(self):
     """evaluate: test de evaluacion 14 con resultado incorrecto por expresion mal formada"""
     expr = 'a>3 and b 7'
     values = {'a': 5, 'b': 5, 'c': 0, 'd': 2}
     ev = ExpressionEvaluator(expr)
     ev.evaluate(values)
コード例 #15
0
 def test_evaluate_13(self):
     """evaluate: test de evaluacion 13 con resultado incorrecto por expresion mal formada"""
     expr = 'have_passed_time[2017-01-01 00:00:00", 60, weeks]'
     values = {'a': 'holamundo', 'b': 8, 'c': 6, 'xxx': False}
     ev = ExpressionEvaluator(expr)
     ev.evaluate(values)