#!/usr/bin/env python # file test_helpers.py # author Florent Guiotte # version 0.0 # date 24 août 2020 """Abstract doc. """ import numpy as np import pytest from idefix import helpers, io @pytest.fixture def ma_raster(): rs = np.random.RandomState(42) raster = rs.random((10,10)) raster = np.ma.array(raster, mask=raster<.1) return raster @pytest.mark.parametrize('method', ['nearest', 'linear', 'cubic', 'idw']) def test_interpolate(ma_raster, method): helpers.interpolate(ma_raster, method) def _data_pc(datadir, set_id): path = datadir.join('pc{}.txt'.format(set_id)) data = io.load_txt(path, 'x y z i'.split()) return data @pytest.mark.parametrize('params', [ {}, {'cell_size': 2.}, {'last': True}]) def test_dsm(datadir, params): pc = _data_pc(datadir, 0) dsm = helpers.dsm(pc, **params) assert dsm is not None, 'Did not return anything...' assert not np.isnan(dsm).any(), 'Some missing values in DSM' def test_dtm(ma_raster): dtm = helpers.dtm_dh_filter(ma_raster) assert dtm is not None, 'Did not return anything...'