Esempio n. 1
0
def test_precedence_with_between():
    expected_expr = Expressions.or_(
        Expressions.and_(Expressions.greater_than_or_equal("col_a", 1),
                         Expressions.less_than_or_equal("col_a", 2)),
        Expressions.equal("col_c", 3))

    conv_expr = Expressions.convert_string_to_expr(
        "col_a between 1 and 2 or col_c=3")
    assert expected_expr == conv_expr
Esempio n. 2
0
def test_precedence_explicit():
    expected_expr = Expressions.and_(
        Expressions.equal("col_a", 1),
        Expressions.or_(Expressions.equal("col_b", 2),
                        Expressions.equal("col_c", 3)))

    conv_expr = Expressions.convert_string_to_expr(
        "col_a=1 and (col_b=2 or col_c=3)")
    assert expected_expr == conv_expr
Esempio n. 3
0
def test_precedence_opposite_order():
    expected_expr = Expressions.or_(
        Expressions.and_(Expressions.equal("col_a", 1),
                         Expressions.equal("col_b", 2)),
        Expressions.equal("col_c", 3))

    conv_expr = Expressions.convert_string_to_expr(
        "col_a=1 and col_b=2 or col_c=3")
    assert expected_expr == conv_expr
Esempio n. 4
0
def test_ternary_condition():
    expected_expr = Expressions.and_(
        Expressions.equal("col_a", 1),
        Expressions.and_(Expressions.equal("col_b", 2),
                         Expressions.equal("col_c", 3)))

    conv_expr = Expressions.convert_string_to_expr(
        "col_a=1 and col_b=2 and col_c=3")
    assert expected_expr == conv_expr
Esempio n. 5
0
def test_complex_expansion():
    expected_expr = Expressions.or_(
        Expressions.and_(
            Expressions.equal("a", 1),
            Expressions.and_(Expressions.equal("b", 2),
                             Expressions.not_equal("c", 3))),
        Expressions.is_null("d"))
    conv_expr = Expressions.convert_string_to_expr(
        "(a=1 and b=2 and c<>3) or d is null")
    assert expected_expr == conv_expr
Esempio n. 6
0
def test_not_null():
    expected_expr = Expressions.not_null("col_a")
    conv_expr = Expressions.convert_string_to_expr("col_a is not null")
    assert expected_expr == conv_expr
Esempio n. 7
0
def test_between():
    expected_expr = Expressions.and_(
        Expressions.greater_than_or_equal("col_a", 1),
        Expressions.less_than_or_equal("col_a", 2))
    conv_expr = Expressions.convert_string_to_expr("col_a between 1 and 2")
    assert expected_expr == conv_expr
Esempio n. 8
0
def test_or():
    expected_expr = Expressions.or_(Expressions.equal("col_a", 1),
                                    Expressions.equal("col_b", 2))
    conv_expr = Expressions.convert_string_to_expr("col_a=1 or col_b=2")
    assert expected_expr == conv_expr
Esempio n. 9
0
def test_and():
    expected_expr = Expressions.and_(Expressions.equal("col_a", 1),
                                     Expressions.equal("col_b", 2))
    conv_expr = Expressions.convert_string_to_expr("col_a=1 and col_b=2")
    assert expected_expr == conv_expr
Esempio n. 10
0
def test_lte():
    expected_expr = Expressions.less_than_or_equal("col_a", 1)
    conv_expr = Expressions.convert_string_to_expr("col_a <= 1")
    assert expected_expr == conv_expr
Esempio n. 11
0
def test_lt():
    expected_expr = Expressions.less_than("col_a", 1)
    conv_expr = Expressions.convert_string_to_expr("col_a < 1")
    assert expected_expr == conv_expr
Esempio n. 12
0
def test_compound_not_equal():
    expected_expr = Expressions.not_(Expressions.equal("col_a", 7))
    conv_expr = Expressions.convert_string_to_expr("not (col_a = 7)")
    assert expected_expr == conv_expr
Esempio n. 13
0
def test_gt():
    expected_expr = Expressions.greater_than("col_a", 1)
    conv_expr = Expressions.convert_string_to_expr("col_a > 1")
    assert expected_expr == conv_expr
Esempio n. 14
0
def test_equal_alt_syntax():
    expected_expr = Expressions.equal("col_a", 1)
    conv_expr = Expressions.convert_string_to_expr("col_a==1")
    assert expected_expr == conv_expr
Esempio n. 15
0
def test_not():
    expected_expr = Expressions.not_("col_a")
    conv_expr = Expressions.convert_string_to_expr("not col_a")
    assert expected_expr == conv_expr
Esempio n. 16
0
def test_gte():
    expected_expr = Expressions.greater_than_or_equal("col_a", 1)
    conv_expr = Expressions.convert_string_to_expr("col_a >= 1")
    assert expected_expr == conv_expr
Esempio n. 17
0
def test_not_equal():
    expected_expr = Expressions.not_equal("col_a", 7)
    conv_expr = Expressions.convert_string_to_expr("col_a <> 7")
    assert expected_expr == conv_expr
def test_str_equal_double_quotes():
    expected_expr = Expressions.equal("col_a", "123")
    conv_expr = Expressions.convert_string_to_expr("col_a=\"123\"")
    assert expected_expr == conv_expr