diff --git a/test/common/geometry/CMakeLists.txt b/test/common/geometry/CMakeLists.txt
index d31f1ee8bf6a87c0d61720249b47890c90ee4bd0..90a842d59af9ba98dc4ecc13f2698cf1aa7ffa7c 100644
--- a/test/common/geometry/CMakeLists.txt
+++ b/test/common/geometry/CMakeLists.txt
@@ -7,6 +7,7 @@ dumux_add_test(SOURCES test_1d2d_intersection.cc LABELS unit)
 dumux_add_test(SOURCES test_2d2d_intersection.cc LABELS unit)
 dumux_add_test(SOURCES test_2d3d_intersection.cc LABELS unit)
 dumux_add_test(SOURCES test_graham_convex_hull.cc LABELS unit)
+dumux_add_test(SOURCES test_intersectingentity_cartesiangrid.cc LABELS unit)
 
 dune_symlink_to_source_files(FILES ball.msh)
 dumux_add_test(SOURCES test_intersectionentityset.cc
diff --git a/test/common/geometry/test_intersectingentity_cartesiangrid.cc b/test/common/geometry/test_intersectingentity_cartesiangrid.cc
new file mode 100644
index 0000000000000000000000000000000000000000..dd7dacc0d9f774577f472f3459da3293f139f7e6
--- /dev/null
+++ b/test/common/geometry/test_intersectingentity_cartesiangrid.cc
@@ -0,0 +1,44 @@
+#include <config.h>
+
+#include <dune/common/parallel/mpihelper.hh>
+#include <dune/common/fvector.hh>
+#include <dune/common/exceptions.hh>
+#include <dune/grid/yaspgrid.hh>
+
+#include <dumux/common/geometry/boundingboxtree.hh>
+#include <dumux/common/geometry/intersectingentities.hh>
+
+template<int dimworld>
+void testIntersectingEntityCartesianGrid()
+{
+    static constexpr int dim = dimworld;
+    using Yasp = Dune::YaspGrid<dim, Dune::EquidistantOffsetCoordinates<double, dimworld>>;
+    std::array<int, dim> cells; cells.fill(30);
+    Dune::FieldVector<double, dimworld> lowerLeft(1.1), upperRight(2.2);
+    Yasp yasp(lowerLeft, upperRight, cells);
+
+    for (const auto& element : elements(yasp.leafGridView()))
+    {
+        const auto center = element.geometry().center();
+        // test intersectsPointBoundingBox
+        if (!Dumux::intersectsPointBoundingBox(center, lowerLeft, upperRight))
+            DUNE_THROW(Dune::Exception, "Element center not in grid bounding box!");
+
+        // test intersectingEntityCartesianGrid
+        const auto isIndex = Dumux::intersectingEntityCartesianGrid(center, lowerLeft, upperRight, cells);
+        const auto gridIndex = yasp.leafGridView().indexSet().index(element);
+        if (isIndex != gridIndex)
+            DUNE_THROW(Dune::Exception, "Wrong element index: intersection: " << isIndex
+                                        << ", grid index set: " << gridIndex);
+    }
+}
+
+int main(int argc, char* argv[])
+{
+    Dune::MPIHelper::instance(argc, argv);
+    testIntersectingEntityCartesianGrid<1>();
+    testIntersectingEntityCartesianGrid<2>();
+    testIntersectingEntityCartesianGrid<3>();
+
+    return 0;
+}