Ejemplo n.º 1
0
 def test_notnull(self):
     vars = {'somevar': u'value'}
     assert not evaluate('somevar is null', vars)
     assert evaluate('somevar is not null', vars)
Ejemplo n.º 2
0
 def test_invalid_input(self):
     evaluate('true & false')
Ejemplo n.º 3
0
 def test_unary_minus(self):
     assert evaluate('2 * -5 = -10')
Ejemplo n.º 4
0
 def test_add(self):
     assert evaluate('1 + 2 = 3')
     assert evaluate('1.5 + .5 = 2')
     assert evaluate('0xff + 0x10 = 0x10F')
Ejemplo n.º 5
0
 def test_product(self):
     assert evaluate('3 * 2 = 6')
     assert evaluate('5e+2 * 2 = 1000')
Ejemplo n.º 6
0
 def test_lt_true(self):
     assert evaluate('1 < 2')
Ejemplo n.º 7
0
 def test_lte_true(self):
     assert evaluate('2 <= 2')
Ejemplo n.º 8
0
 def test_like_empty_source(self):
     assert evaluate("'' like '%'")
     assert not evaluate("'' like '_%'")
Ejemplo n.º 9
0
 def test_like_escape(self):
     assert evaluate(r"'\nx%_\n\\' like '\nx\%\_\n\\'")
Ejemplo n.º 10
0
 def test_like_wildcard(self):
     vars = {'var1': 'my test string'}
     assert evaluate("var1 like '%est%'", vars)
     assert not evaluate("var1 like 'est'", vars)
     assert not evaluate("var1 like '%est'", vars)
     assert not evaluate("var1 like 'est%'", vars)
Ejemplo n.º 11
0
 def test_like_tricks(self):
     assert evaluate("'x' like '_%'")
     assert evaluate("'x' like '%'")
     assert evaluate("'x' like '%%'")
Ejemplo n.º 12
0
 def test_like_simple(self):
     assert evaluate("'abc' like 'abc'")
Ejemplo n.º 13
0
 def test_not_in(self):
     vars = {'var1': 'xxx', 'var2': 'yyy'}
     assert evaluate("'xyz' not in (var1, 'def', var2)", vars)
     assert not evaluate("'yyy' not in (var1, 'def', var2)", vars)
Ejemplo n.º 14
0
 def test_in(self):
     vars = {'var1': 'abc', 'var2': 'xyz'}
     assert evaluate("'xyz' in (var1, 'def', var2)", vars)
     assert not evaluate("'ghi' in (var1, 'def', var2)", vars)
Ejemplo n.º 15
0
 def test_gte_false(self):
     assert not evaluate('2 >= 3')
Ejemplo n.º 16
0
 def test_like_alternate_escape(self):
     assert evaluate(r"'\nx%_\n\\' like '\nx*%*_\n\\' escape '*'")
Ejemplo n.º 17
0
 def test_gte_true(self):
     assert evaluate('2 >= 2')
Ejemplo n.º 18
0
 def test_undefined_variable(self):
     vars = {'var1': 'value'}
     evaluate('var1 = var2')
Ejemplo n.º 19
0
 def test_lte_false(self):
     assert not evaluate('3 <= 2')
Ejemplo n.º 20
0
 def test_not_like(self):
     vars = {'var1': 'my test string'}
     assert evaluate("var1 not like '%stringe'", vars)
     assert evaluate("var1 not like ' my str%'", vars)
Ejemplo n.º 21
0
 def test_arithmetic_invalid_operands(self):
     vars = {'var1': 1, 'var2': '2'}
     evaluate('var1 + var2', vars)
Ejemplo n.º 22
0
 def test_invalid_not_like_operands(self):
     vars = {'var1': 'text', 'var2': 0}
     evaluate('var1 not like var2', vars)
Ejemplo n.º 23
0
 def test_deduce(self):
     assert evaluate('3 - 2 = 1')
     assert evaluate('3e2 - 200 = 100')
Ejemplo n.º 24
0
 def test_neq_string(self):
     vars = {'var1': r"\'test\'"}
     assert evaluate(r"'\'tset\'' <> var1", vars)
Ejemplo n.º 25
0
 def test_division(self):
     assert evaluate('6 / 3 = 2')
     assert evaluate('2e-2 * 2 = 0.04')
Ejemplo n.º 26
0
 def test_invalid_gt_operands(self):
     vars = {'var1': 'text', 'var2': 0}
     evaluate('var1 > var2', vars)
Ejemplo n.º 27
0
 def test_precedence(self):
     assert evaluate('3 + 4 * 4 = 19')
Ejemplo n.º 28
0
 def test_gt_true(self):
     assert evaluate('2 > 1')
Ejemplo n.º 29
0
 def test_invalid_unary_minus(self):
     evaluate("-'test'")
Ejemplo n.º 30
0
 def test_isnull(self):
     assert evaluate('somevar is null')
     assert not evaluate('somevar is not null')