diff --git a/python/dune/codegen/pdelab/geometry.py b/python/dune/codegen/pdelab/geometry.py
index 0efd5a27e1cd310e0ebee29676aabb745b6c1311..e1f2bd4b328e32ec4750d8a5b178472ba8fe357c 100644
--- a/python/dune/codegen/pdelab/geometry.py
+++ b/python/dune/codegen/pdelab/geometry.py
@@ -235,13 +235,16 @@ class AxiparallelGeometryMixin(GenericPDELabGeometryMixin):
         # embedded into higher dimensional world space.
         return self.jacobian_determinant(o)
 
-    @preamble
     def define_facet_jacobian_determinant(self, name):
+        valuearg(name)
+        self._define_facet_jacobian_determinant(name)
+
+    @preamble
+    def _define_facet_jacobian_determinant(self, name):
         # NB: In the equidistant case, this might be optimized to store *d* values on the operator level
         #     We don't do that right now for laziness.
         geo = name_geometry()
         pos = name_localcenter()
-        valuearg(name)
 
         return "auto {} = {}.integrationElement({});".format(name,
                                                              geo,
@@ -251,16 +254,18 @@ class AxiparallelGeometryMixin(GenericPDELabGeometryMixin):
 
 @geometry_mixin("equidistant")
 class EquidistantGeometryMixin(AxiparallelGeometryMixin):
-    @class_member(classtag="operator")
     def define_jacobian_determinant(self, name):
         valuearg(name)
-        self._define_jacobian_determinant_eval(name)
+        self._define_jacobian_determinant(name)
+
+    @class_member(classtag="operator")
+    def _define_jacobian_determinant(self, name):
         from dune.codegen.pdelab.localoperator import lop_template_ansatz_gfs
         gfst = lop_template_ansatz_gfs()
         return "typename {}::Traits::GridView::template Codim<0>::Geometry::ctype {};".format(gfst, name)
 
     @preamble(kernel="operator")
-    def _define_jacobian_determinant_eval(name):
+    def _define_jacobian_determinant_eval(self, name):
         from dune.codegen.pdelab.localoperator import name_ansatz_gfs_constructor_param, lop_template_range_field
         gfs = name_ansatz_gfs_constructor_param()
         rft = lop_template_range_field()
@@ -276,7 +281,7 @@ class EquidistantGeometryMixin(AxiparallelGeometryMixin):
         return "typename {}::Traits::GridView::template Codim<0>::Geometry::JacobianInverseTransposed {};".format(gfst, name)
 
     @preamble(kernel="operator")
-    def _define_jacobian_inverse_transposed_eval(name):
+    def _define_jacobian_inverse_transposed_eval(self, name):
         from dune.codegen.pdelab.localoperator import name_ansatz_gfs_constructor_param, lop_template_range_field
         gfs = name_ansatz_gfs_constructor_param()
         rft = lop_template_range_field()
diff --git a/test/hyperbolic/linearacoustics.mini b/test/hyperbolic/linearacoustics.mini
index ad1cc95b405ebd4a7624ef8057b99834fb52ccbc..77ecbf4d889f642d61208a60682ba93b49f6ee1c 100644
--- a/test/hyperbolic/linearacoustics.mini
+++ b/test/hyperbolic/linearacoustics.mini
@@ -15,6 +15,7 @@ extension = vtu
 [formcompiler]
 explicit_time_stepping = 1
 operators = mass, r
+geometry_mixins = equidistant
 
 [formcompiler.mass]
 numerical_jacobian = 1
diff --git a/test/navier-stokes/navierstokes_2d_dg_quadrilateral.mini b/test/navier-stokes/navierstokes_2d_dg_quadrilateral.mini
index 5700107d03d62655e87b50b129aabc5b534134d2..460c5c14f84abd366538630268d8e2ad5ca51cec 100644
--- a/test/navier-stokes/navierstokes_2d_dg_quadrilateral.mini
+++ b/test/navier-stokes/navierstokes_2d_dg_quadrilateral.mini
@@ -23,6 +23,7 @@ l2error_tree_path = 1, 1, 0
 explicit_time_stepping = 0
 yaspgrid_offset = 1
 overlapping = 1
+geometry_mixins = equidistant
 
 [formcompiler.mass]
 numerical_jacobian = 0, 1 | expand num
diff --git a/test/navier-stokes/navierstokes_3d_dg_quadrilateral.mini b/test/navier-stokes/navierstokes_3d_dg_quadrilateral.mini
index 8823cb1ba26196a5f0aa01cb78d68ff60625f88b..968e989446021d2ee402e66ae2c30954d451fb29 100644
--- a/test/navier-stokes/navierstokes_3d_dg_quadrilateral.mini
+++ b/test/navier-stokes/navierstokes_3d_dg_quadrilateral.mini
@@ -18,6 +18,7 @@ compare_l2errorsquared = 5e-4
 # Only calculate error for the velocity part
 l2error_tree_path = 1, 1, 1, 0
 operators = mass, r
+geometry_mixins = equidistant
 
 [formcompiler.mass]
 numerical_jacobian = 0, 1 | expand num
diff --git a/test/nonlinear/diffusivewave.mini b/test/nonlinear/diffusivewave.mini
index c82f8ed23330982d6caf40f21d71dbb5d96f0588..7aa66686e28e4e6446dbbd39ef519b6c4fed7e36 100644
--- a/test/nonlinear/diffusivewave.mini
+++ b/test/nonlinear/diffusivewave.mini
@@ -15,6 +15,7 @@ T = 0.01
 
 [formcompiler]
 operators = mass, poisson
+geometry_mixins = equidistant
 
 [formcompiler.mass]
 sumfact = 0, 1 | expand sf
diff --git a/test/poisson/dimension-grid-variations/poisson_2d_cg_quadrilateral.mini b/test/poisson/dimension-grid-variations/poisson_2d_cg_quadrilateral.mini
index c5ec6e72a870b19eee8d9b8f881c02c770c65da9..2bdf91746cece93d09164fa3b167a91faf57c541 100644
--- a/test/poisson/dimension-grid-variations/poisson_2d_cg_quadrilateral.mini
+++ b/test/poisson/dimension-grid-variations/poisson_2d_cg_quadrilateral.mini
@@ -9,3 +9,4 @@ extension = vtu
 
 [formcompiler]
 compare_l2errorsquared = 9e-8
+geometry_mixins = equidistant
diff --git a/test/poisson/dimension-grid-variations/poisson_2d_dg_quadrilateral.mini b/test/poisson/dimension-grid-variations/poisson_2d_dg_quadrilateral.mini
index cce6d681b76f031b3a239a04b7d3cb371bd99a85..6b4182ceb1aba6f4a996dab8927c7c7bb4b2a58a 100644
--- a/test/poisson/dimension-grid-variations/poisson_2d_dg_quadrilateral.mini
+++ b/test/poisson/dimension-grid-variations/poisson_2d_dg_quadrilateral.mini
@@ -9,3 +9,4 @@ extension = vtu
 
 [formcompiler]
 compare_l2errorsquared = 6e-7
+geometry_mixins = equidistant
diff --git a/test/poisson/dimension-grid-variations/poisson_3d_cg_hexahedron.mini b/test/poisson/dimension-grid-variations/poisson_3d_cg_hexahedron.mini
index 1d4c4e9660cb9f285b3dc51db9c3c525181dd1ea..9365f433eef256bada9b3dabd087db20b41fba63 100644
--- a/test/poisson/dimension-grid-variations/poisson_3d_cg_hexahedron.mini
+++ b/test/poisson/dimension-grid-variations/poisson_3d_cg_hexahedron.mini
@@ -9,3 +9,4 @@ extension = vtu
 
 [formcompiler]
 compare_l2errorsquared = 9e-5
+geometry_mixins = equidistant
diff --git a/test/poisson/dimension-grid-variations/poisson_3d_dg_hexahedron.mini b/test/poisson/dimension-grid-variations/poisson_3d_dg_hexahedron.mini
index 1442988525b7b3080bcc0efd51e69ccca4e84f63..fa0b3a6db82c1ae68923d1a4f0393136a9405aae 100644
--- a/test/poisson/dimension-grid-variations/poisson_3d_dg_hexahedron.mini
+++ b/test/poisson/dimension-grid-variations/poisson_3d_dg_hexahedron.mini
@@ -9,3 +9,4 @@ extension = vtu
 
 [formcompiler]
 compare_l2errorsquared = 1e-4
+geometry_mixins = equidistant
diff --git a/test/poisson/opcount_poisson_dg_symdiff.mini b/test/poisson/opcount_poisson_dg_symdiff.mini
index d98044df779fa8be1d3c2ee09d4e2023f0d95da9..186c4344f9fed7512cde913433145259a76bf7b5 100644
--- a/test/poisson/opcount_poisson_dg_symdiff.mini
+++ b/test/poisson/opcount_poisson_dg_symdiff.mini
@@ -10,3 +10,4 @@ extension = vtu
 [formcompiler]
 opcounter = 1
 instrumentation_level = 3
+geometry_mixins = equidistant
diff --git a/test/poisson/poisson_dg_quadrilateral.mini b/test/poisson/poisson_dg_quadrilateral.mini
index 162e24794f5e36afcd697a59263d6b676f01aa0c..be6d3e2a5cd251294c64d135eb0c9d65aa73bbb0 100644
--- a/test/poisson/poisson_dg_quadrilateral.mini
+++ b/test/poisson/poisson_dg_quadrilateral.mini
@@ -11,7 +11,7 @@ extension = vtu
 
 [formcompiler]
 compare_l2errorsquared = 7e-7
-geometry = equidistant
+geometry_mixins = equidistant
 
 [formcompiler.r]
 numerical_jacobian = 1, 0 | expand num
diff --git a/test/poisson/poisson_dg_tensor.mini b/test/poisson/poisson_dg_tensor.mini
index d696cebc5196bd711ef4e8e2e1371a977be3a31f..c799f45db355993cba3421736af5b75fcbc8ae0d 100644
--- a/test/poisson/poisson_dg_tensor.mini
+++ b/test/poisson/poisson_dg_tensor.mini
@@ -13,6 +13,7 @@ extension = vtu
 
 [formcompiler]
 compare_l2errorsquared = 4e-6
+geometry_mixins = equidistant
 
 [formcompiler.r]
 numerical_jacobian = 1, 0 | expand num
\ No newline at end of file
diff --git a/test/stokes/stokes_3d_dg_quadrilateral.mini b/test/stokes/stokes_3d_dg_quadrilateral.mini
index 59396277ede15f6a563d04fb448c4d3b5a445b3b..8cb5d51d991b9555c8f2f5494e23fcd4682c7285 100644
--- a/test/stokes/stokes_3d_dg_quadrilateral.mini
+++ b/test/stokes/stokes_3d_dg_quadrilateral.mini
@@ -11,6 +11,7 @@ extension = vtu
 
 [formcompiler]
 compare_l2errorsquared = 6e-8
+geometry_mixins = equidistant
 
 [formcompiler.r]
 numerical_jacobian = 0, 1 | expand num
diff --git a/test/stokes/stokes_3d_quadrilateral.mini b/test/stokes/stokes_3d_quadrilateral.mini
index 17f3d9f510054ff9014830e258edd7840180248e..ecf02f5730606f9c27507f1cc39c340043558357 100644
--- a/test/stokes/stokes_3d_quadrilateral.mini
+++ b/test/stokes/stokes_3d_quadrilateral.mini
@@ -12,6 +12,7 @@ extension = vtu
 
 [formcompiler]
 compare_l2errorsquared = 1e-10
+geometry_mixins = equidistant
 
 [formcompiler.r]
 numerical_jacobian = 1, 0 | expand num
diff --git a/test/stokes/stokes_dg_quadrilateral.mini b/test/stokes/stokes_dg_quadrilateral.mini
index 78954b12873569589c2874d15858c6121a242eb5..e91ad9c891f40c04300eb8373d648cbf7b6abcd7 100644
--- a/test/stokes/stokes_dg_quadrilateral.mini
+++ b/test/stokes/stokes_dg_quadrilateral.mini
@@ -11,6 +11,7 @@ extension = vtu
 
 [formcompiler]
 compare_l2errorsquared = 1e-8
+geometry_mixins = equidistant
 
 [formcompiler.r]
 numerical_jacobian = 0, 1 | expand num
diff --git a/test/stokes/stokes_quadrilateral.mini b/test/stokes/stokes_quadrilateral.mini
index 6ee36e8220463cbb75764a91b0ae1d2970f28eb3..6954f2278d96f5cc2e7fc80c3fbf14e6207a0554 100644
--- a/test/stokes/stokes_quadrilateral.mini
+++ b/test/stokes/stokes_quadrilateral.mini
@@ -12,6 +12,7 @@ extension = vtu
 
 [formcompiler]
 compare_l2errorsquared = 1e-10
+geometry_mixins = equidistant
 
 [formcompiler.r]
 numerical_jacobian = 1, 0 | expand num