diff --git a/tests/test_DiscreteFunctionP0.cpp b/tests/test_DiscreteFunctionP0.cpp
index 704000ecc79894ee9876ded1e6cfbd53f1aae5a7..1fefcdc6ea1e50e4c48fdff2be95d737a118de5a 100644
--- a/tests/test_DiscreteFunctionP0.cpp
+++ b/tests/test_DiscreteFunctionP0.cpp
@@ -91,8 +91,12 @@ TEST_CASE("DiscreteFunctionP0", "[scheme]")
       REQUIRE(same_values(h, zero));
       REQUIRE(same_values(h, h_values));
 
+      DiscreteFunctionP0<Dimension, TinyVector<Dimension>> shallow_h{mesh};
+      shallow_h = h;
+
       copy_to(MeshDataManager::instance().getMeshData(*mesh).xj(), h_values);
 
+      REQUIRE(same_values(shallow_h, h_values));
       REQUIRE(same_values(h, h_values));
       REQUIRE(not same_values(h, zero));
 
@@ -129,8 +133,12 @@ TEST_CASE("DiscreteFunctionP0", "[scheme]")
       REQUIRE(same_values(h, zero));
       REQUIRE(same_values(h, h_values));
 
+      DiscreteFunctionP0<Dimension, TinyVector<Dimension>> shallow_h{mesh};
+      shallow_h = h;
+
       copy_to(MeshDataManager::instance().getMeshData(*mesh).xj(), h_values);
 
+      REQUIRE(same_values(shallow_h, h_values));
       REQUIRE(same_values(h, h_values));
       REQUIRE(not same_values(h, zero));