diff options
| author | Daniel Schadt <kingdread@gmx.de> | 2026-08-17 20:17:47 +0200 |
|---|---|---|
| committer | Daniel Schadt <kingdread@gmx.de> | 2026-08-17 20:17:47 +0200 |
| commit | bfdb5b970f313e7cb64cd7e2b34394fea5358d6b (patch) | |
| tree | 2ec44b1e3aade66985f58c37f2149b018a169bc9 | |
| parent | 58a69ea8688b4d1ec7c70caffaf30a608bccd4bc (diff) | |
| download | hittekaart-bfdb5b970f313e7cb64cd7e2b34394fea5358d6b.tar.gz hittekaart-bfdb5b970f313e7cb64cd7e2b34394fea5358d6b.tar.bz2 hittekaart-bfdb5b970f313e7cb64cd7e2b34394fea5358d6b.zip | |
add Python tests
mostly to check that the API and the calling works
| -rw-r--r-- | .woodpecker/tests.yaml | 4 | ||||
| -rw-r--r-- | hittekaart-py/tests/test_api.py | 71 |
2 files changed, 74 insertions, 1 deletions
diff --git a/.woodpecker/tests.yaml b/.woodpecker/tests.yaml index 4ca95a0..697a524 100644 --- a/.woodpecker/tests.yaml +++ b/.woodpecker/tests.yaml @@ -5,8 +5,10 @@ steps: - name: test image: rust commands: - - apt update && apt install -y python3-dev + - apt update && apt install -y python3-dev python3-pip + - pip3 install ./hittekaart-py pytest - cargo test + - cd hittekaart-py && pytest - name: compile-benches image: rust commands: diff --git a/hittekaart-py/tests/test_api.py b/hittekaart-py/tests/test_api.py new file mode 100644 index 0000000..1ea51c2 --- /dev/null +++ b/hittekaart-py/tests/test_api.py @@ -0,0 +1,71 @@ +from hittekaart_py import ( + Track, HeatmapRenderer, MarktileRenderer, TilehuntRenderer, Settings, Storage, generate +) + + +def tracks(): + return [ + Track.from_file(b"../test-assets/Synthetic_BRouter_1.gpx.gz", "gzip"), + ] + + +def storage(): + return Storage.MbTiles(b":memory:", "heat", "mappy") + + +def test_track_from_file(): + track = Track.from_file(b"../test-assets/Synthetic_BRouter_1.gpx.gz", "gzip") + assert track is not None + + +def test_track_from_coordinates(): + track = Track.from_coordinates([(1.0, 2.0), (3.0, 4.0)]) + assert track is not None + + +def test_storage_folder(): + storage = Storage.Folder(b"/tmp") + assert storage is not None + + +def test_storage_osmand(): + storage = Storage.OsmAnd(b":memory:") + assert storage is not None + + +def test_storage_mbtiles(): + storage = Storage.MbTiles(b":memory:") + assert storage is not None + + storage = Storage.MbTiles(b":memory:", "Heatmap") + assert storage is not None + + storage = Storage.MbTiles(b":memory:", "Heatmap", "This is my heatmap") + assert storage is not None + + +def test_generate_heatmap(): + generate( + Settings(), + tracks(), + HeatmapRenderer(), + storage(), + ) + + +def test_generate_marktile(): + generate( + Settings(), + tracks(), + MarktileRenderer(), + storage(), + ) + + +def test_generate_tilehunt(): + generate( + Settings(), + tracks(), + TilehuntRenderer(10), + storage(), + ) |
