Example #1
0
def test_or():
    result = parse('''
    <fes:Filter xmlns:fes="http://www.opengis.net/fes/2.0"
        xmlns:xsd="http://www.w3.org/2001/XMLSchema-datatypes">
      <fes:Or>
        <fes:PropertyIsLessThanOrEqualTo>
          <fes:ValueReference>attr</fes:ValueReference>
          <fes:Literal type="xsd:double">30.5</fes:Literal>
        </fes:PropertyIsLessThanOrEqualTo>
        <fes:PropertyIsGreaterThanOrEqualTo>
          <fes:ValueReference>attr</fes:ValueReference>
          <fes:Literal type="xsd:double">10.5</fes:Literal>
        </fes:PropertyIsGreaterThanOrEqualTo>
      </fes:Or>
    </fes:Filter>
    ''')
    assert result == ast.Or(ast.LessEqual(
        ast.Attribute('attr'),
        30.5,
    ), ast.GreaterEqual(
        ast.Attribute('attr'),
        10.5,
    ))
Example #2
0
def test_attribute_lte_literal():
    result = parse('{ "lte": [{ "property": "attr" }, 5]}')
    assert result == ast.LessEqual(
        ast.Attribute('attr'),
        5.0,
    )
Example #3
0
def test_attribute_lte_literal():
    result = parse('attr <= 5')
    assert result == ast.LessEqual(
        ast.Attribute('attr'),
        5.0,
    )
Example #4
0
def test_attribute_lte_literal():
    result = parse('["<=", ["get", "attr"], 5]')
    assert result == ast.LessEqual(
        ast.Attribute('attr'),
        5.0,
    )