File: query_test.py

package info (click to toggle)
python-mapnik 1%3A0.0~20240222-5ab32f020-4
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 11,364 kB
  • sloc: python: 11,685; cpp: 5,776; sh: 242; makefile: 10
file content (33 lines) | stat: -rw-r--r-- 1,087 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
import os
import mapnik
import pytest
from .utilities import execution_path

@pytest.fixture(scope="module")
def setup():
    # All of the paths used are relative, if we run the tests
    # from another directory we need to chdir()
    os.chdir(execution_path('.'))
    yield

def test_query_init(setup):
    bbox = (-180, -90, 180, 90)
    query = mapnik.Query(mapnik.Box2d(*bbox))
    r = query.resolution
    assert r[0] == pytest.approx(1.0, abs=1e-7)
    assert r[1] == pytest.approx(1.0, abs=1e-7)
    # https://github.com/mapnik/mapnik/issues/1762
    assert query.property_names == []
    query.add_property_name('migurski')
    assert query.property_names == ['migurski']

# Converting *from* tuples *to* resolutions is not yet supported

def test_query_resolution():
    with pytest.raises(TypeError):
        bbox = (-180, -90, 180, 90)
        init_res = (4.5, 6.7)
        query = mapnik.Query(mapnik.Box2d(*bbox), init_res)
        r = query.resolution
        assert r[0] == pytest.approx(init_res[0], abs=1e-7)
        assert r[1] == pytest.approx(init_res[1], abs=1e-7)