diff --git a/bin/grass/r.smoderp2d/r.smoderp2d.html b/bin/grass/r.smoderp2d/r.smoderp2d.html
index ce42bfc6e..f0f76555d 100644
--- a/bin/grass/r.smoderp2d/r.smoderp2d.html
+++ b/bin/grass/r.smoderp2d/r.smoderp2d.html
@@ -5,7 +5,14 @@
DESCRIPTION
EXAMPLE
-Run quick test:
+Nucice dataset
+
+
+grass -c EPSG:5514 /tmp/smoderp2d-nucice --exec python3 tests/data/import_grass.py tests/data/nucice
+grass -c /tmp/smoderp2d-nucice/test
+
+
+Perform computation on Nucice dataset:
r.smoderp2d \
@@ -25,6 +32,33 @@ EXAMPLE
output=tests/data/output
+Rain simulation dataset
+
+
+grass -c EPSG:5514 /tmp/smoderp2d-rainsim --exec python3 tests/data/import_grass.py tests/data/rain_sim
+grass -c /tmp/smoderp2d-rainsim/test
+
+
+Perform computation on Rain simulation dataset:
+
+
+r.smoderp2d \
+ elevation=rastr10_05_t2_5@PERMANENT \
+ soil=soil@PERMANENT \
+ soil_type_fieldname=Soil \
+ vegetation=LandUse@PERMANENT \
+ vegetation_type_fieldname=LandUse \
+ rainfall_file=tests/data/rainfall_sim.txt \
+ maxdt=30 end_time=40 \
+ points=ObsPointssel@PERMANENT \
+ table_soil_vegetation=test_soilveg@PERMANENT \
+ table_soil_vegetation_fieldname=soilveg \
+ streams=streams@PERMANENT \
+ channel_properties_table=stream_shape@PERMANENT \
+ streams_channel_type_fieldname=channel_id \
+ output=tests/data/output
+
+
SEE ALSO
diff --git a/tests/data/import_grass.py b/tests/data/import_grass.py
new file mode 100755
index 000000000..2a246861e
--- /dev/null
+++ b/tests/data/import_grass.py
@@ -0,0 +1,33 @@
+#!/usr/bin/env python3
+
+# grass -c EPSG:5514 /tmp/smoderp2d-location --exec python3 import_grass.py nucice
+
+import os
+from pathlib import Path
+from grass.pygrass.modules import Module
+
+os.environ['GRASS_OVERWRITE'] ='1'
+
+def do_import(path):
+ for rast in Path(path).glob('*.tif'):
+ Module('r.import', overwrite=True, input=str(rast), output=rast.stem, flags='o')
+ for vect in Path(path).glob('*.shp'):
+ Module('v.import', overwrite=True, input=str(vect), output=vect.stem, snap=0.01)
+ for tabl in Path(path).glob('*.dbf'):
+ if not tabl.with_suffix('.shp').exists():
+ Module('db.in.ogr', overwrite=True, input=str(tabl), output=tabl.stem)
+ for tabl in Path(path).glob('*.csv'):
+ Module('db.in.ogr', overwrite=True, input=str(tabl), output=tabl.stem, gdal_doo="AUTODETECT_TYPE=YES")
+
+if __name__ == "__main__":
+ import argparse
+
+ parser = argparse.ArgumentParser(
+ prog='import_grass',
+ description='Import tests into GRASS location')
+
+ parser.add_argument('directory')
+
+ args = parser.parse_args()
+
+ do_import(args.directory)
diff --git a/tests/data/import_grass.sh b/tests/data/import_grass.sh
deleted file mode 100755
index 7ba4e248f..000000000
--- a/tests/data/import_grass.sh
+++ /dev/null
@@ -1,16 +0,0 @@
-#!/bin/bash -e
-
-# grass ../grassdata/smoderp2d-location/PERMANENT/
-# ./import_grass.sh
-
-export GRASS_OVERWRITE='1'
-
-r.import -o input=dem10m/w001001.adf output=dem10m
-v.import -o input=soils.shp output=soils
-v.import -o input=landuse.shp output=landuse
-v.import -o input=points.shp output=points
-v.import -o input=stream.shp output=stream
-db.in.ogr input=soil_veg_tab_mean.dbf output=soil_veg_tab_mean
-db.in.ogr input=stream_shape.dbf output=stream_shape
-
-exit 0