File: fontset_test.py

package info (click to toggle)
python-mapnik 1%3A0.0~20240222-5ab32f020-4
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 11,364 kB
  • sloc: python: 11,685; cpp: 5,776; sh: 242; makefile: 10
file content (43 lines) | stat: -rw-r--r-- 1,328 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
34
35
36
37
38
39
40
41
42
43
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_loading_fontset_from_map(setup):
    if not os.path.exists('../data/good_maps/fontset.xml'):
        pytest.skip('Missing data')

    m = mapnik.Map(256, 256)
    mapnik.load_map(m, '../data/good_maps/fontset.xml', True)
    fs = m.find_fontset('book-fonts')
    assert len(fs.names) ==  2
    assert list(fs.names) == ['DejaVu Sans Book', 'DejaVu Sans Oblique']

# def test_loading_fontset_from_python():
#     m = mapnik.Map(256,256)
#     fset = mapnik.FontSet('foo')
#     fset.add_face_name('Comic Sans')
#     fset.add_face_name('Papyrus')
#     assert fset.name == 'foo'
#     fset.name = 'my-set'
#     assert fset.name == 'my-set'
#     m.append_fontset('my-set', fset)
#     sty = mapnik.Style()
#     rule = mapnik.Rule()
#     tsym = mapnik.TextSymbolizer()
#     assert tsym.fontset == None
#     tsym.fontset = fset
#     rule.symbols.append(tsym)
#     sty.rules.append(rule)
#     m.append_style('Style',sty)
#     serialized_map = mapnik.save_map_to_string(m)
#     assert 'fontset-name="my-set"' in serialized_map == True