diff --git a/tests/data/config.ini b/tests/data/config.ini
index 9a40122eaf11d35d35258d4cd511e4b32b8fd3d8..db5819d4bf25790b66f74839fd416e2bc8ecdfcb 100644
--- a/tests/data/config.ini
+++ b/tests/data/config.ini
@@ -40,12 +40,12 @@ bottleneck_rasters = True
 
 [environmental_1]
 name = gvg
-raster = .\data\rasters\gvg.tif
+raster = .\data\rasters\environmentals\gvg.tif
 table = .\data\parameters\gvg_suitability_index.csv
 
 [environmental_2]
 name = ndep
-raster = .\data\rasters\ndep.tif
+raster = .\data\rasters\environmentals\ndep.tif
 table = .\data\parameters\ndep_suitability_index.csv
 
 [species_subselection_1]
diff --git a/tests/data/rasters/gvg.tif b/tests/data/rasters/environmentals/gvg.tif
similarity index 100%
rename from tests/data/rasters/gvg.tif
rename to tests/data/rasters/environmentals/gvg.tif
diff --git a/tests/data/rasters/ndep.tif b/tests/data/rasters/environmentals/ndep.tif
similarity index 100%
rename from tests/data/rasters/ndep.tif
rename to tests/data/rasters/environmentals/ndep.tif
diff --git a/tests/data/rasters/ph.tif b/tests/data/rasters/environmentals/ph.tif
similarity index 100%
rename from tests/data/rasters/ph.tif
rename to tests/data/rasters/environmentals/ph.tif
diff --git a/tests/test_aggregate_land_type_map.py b/tests/test_aggregate_land_type_map.py
new file mode 100644
index 0000000000000000000000000000000000000000..df8db9cc6d009ad8822e7f456d1d5ebb7cc85d40
--- /dev/null
+++ b/tests/test_aggregate_land_type_map.py
@@ -0,0 +1,54 @@
+import numpy as np
+import pytest
+from scipy.sparse import dok_array
+
+from mnp.preparation.aggregate_land_type_map import aggregate_row, LandTypeMap
+
+
+@pytest.fixture
+def unaggregated_row():
+    return np.array(
+        [
+            [0, 0, 1, 0, 2, 2, 3, 3],
+            [0, 0, 0, 0, 0, 0, 3, 1],
+        ]
+    ).T.flatten()
+
+
+class TestLandTypeMap:
+    @pytest.fixture
+    def land_type_map(self):
+        return LandTypeMap(
+            "./data/rasters/land_types.tif",
+            "./data/rasters/land_types.csv",
+            "./data/rasters/environmentals/",
+        )
+
+    def test_aggregate_multiprocess(self, land_type_map):
+        land_type_map.aggregate_multiprocess()
+        assert land_type_map.land_types[2][549, 0] == 1  # left border (lt 2)
+        assert land_type_map.land_types[2][388, 86] == 0  # (lt 1)
+        assert land_type_map.land_types[1][563, 161] == 0  # (no lt)
+        assert land_type_map.land_types[1][578, 639] == 1  # right border (lt 1)
+
+
+def test_aggregate_row(unaggregated_row):
+    lt_dict = {
+        k: dok_array(
+            (
+                1,
+                4,
+            ),
+            dtype=np.double,
+        )
+        for k in [1, 2, 3, 4]
+    }
+    unrecognized = set()
+    land_types, unrecognized_land_type_ids = aggregate_row(
+        unaggregated_row, 0, lt_dict, unrecognized, 2, nodata_array=np.zeros((2, 2))
+    )
+    np.testing.assert_array_equal(
+        land_types[1].todense(), np.array([[0, 0.25, 0, 0.25]])
+    )
+    np.testing.assert_array_equal(land_types[2].todense(), np.array([[0, 0, 0.5, 0]]))
+    np.testing.assert_array_equal(land_types[3].todense(), np.array([[0, 0, 0, 0.75]]))