diff --git a/Tests/AssemblerLib/SteadyDiffusion2DExample1.h b/Tests/AssemblerLib/SteadyDiffusion2DExample1.h
index cc15de1588722b0f8be79dc93a7fdb1394546c99..a5419f0cf47aeaedb85c86c67b0ed5e7bf5de6a1 100644
--- a/Tests/AssemblerLib/SteadyDiffusion2DExample1.h
+++ b/Tests/AssemblerLib/SteadyDiffusion2DExample1.h
@@ -24,57 +24,50 @@
 #include "MeshLib/MeshGenerators/MeshGenerator.h"
 #include "MeshLib/Node.h"
 
-template <typename LocalMatrixType_, typename LocalVectorType_>
-class LocalAssemblerData
+struct SteadyDiffusion2DExample1
 {
-public:
-	using LocalMatrixType = LocalMatrixType_;
-	using LocalVectorType = LocalVectorType_;
-
-public:
-
-	void init(MeshLib::Element const&,
-		LocalMatrixType const& localA,
-		LocalVectorType const& localRhs)
-	{
-		_localA = &localA;
-		_localRhs = &localRhs;
-	}
-
-	void assemble(std::size_t const /*rows*/, std::size_t const /*columns*/)
-	{
-		// The local contributions are computed here, usually, but for this
-		// particular test all contributions are equal for all elements and are
-		// already stored in the _localA matrix.
-	}
+	using LocalMatrixType = MathLib::DenseMatrix<double>;
+	using LocalVectorType = MathLib::DenseVector<double>;
 
-	LocalMatrixType const& getLocalMatrix() const
+	class LocalAssemblerData
 	{
-		return *_localA;
-	}
+	public:
+		void init(MeshLib::Element const&,
+			LocalMatrixType const& localA,
+			LocalVectorType const& localRhs)
+		{
+			_localA = &localA;
+			_localRhs = &localRhs;
+		}
 
-	LocalVectorType const& getLocalVector() const
-	{
-		return *_localRhs;
-	}
+		void assemble(std::size_t const /*rows*/, std::size_t const /*columns*/)
+		{
+			// The local contributions are computed here, usually, but for this
+			// particular test all contributions are equal for all elements and are
+			// already stored in the _localA matrix.
+		}
 
+		LocalMatrixType const& getLocalMatrix() const
+		{
+			return *_localA;
+		}
 
-private:
-	LocalMatrixType const* _localA = nullptr;
-	LocalVectorType const* _localRhs = nullptr;
-};
+		LocalVectorType const& getLocalVector() const
+		{
+			return *_localRhs;
+		}
 
-struct SteadyDiffusion2DExample1
-{
-	using LocalMatrixType = MathLib::DenseMatrix<double>;
-	using LocalVectorType = MathLib::DenseVector<double>;
+	private:
+		LocalMatrixType const* _localA = nullptr;
+		LocalVectorType const* _localRhs = nullptr;
+	};
 
 	static
 	void initializeLocalData(const MeshLib::Element& e,
-			LocalAssemblerData<LocalMatrixType, LocalVectorType>*& data_ptr,
+			LocalAssemblerData*& data_ptr,
 			SteadyDiffusion2DExample1 const& example)
 	{
-		data_ptr = new LocalAssemblerData<LocalMatrixType, LocalVectorType>;
+		data_ptr = new LocalAssemblerData;
 		data_ptr->init(e, example._localA, example._localRhs);
 	}
 
diff --git a/Tests/AssemblerLib/TestSerialLinearSolver.cpp b/Tests/AssemblerLib/TestSerialLinearSolver.cpp
index 790abc6fb57fe2ec6376814e5c3b36baf78bd03e..14c45f6b83b418dd9027ffc3710fdaf74d5c21ce 100644
--- a/Tests/AssemblerLib/TestSerialLinearSolver.cpp
+++ b/Tests/AssemblerLib/TestSerialLinearSolver.cpp
@@ -100,14 +100,14 @@ TEST(AssemblerLibSerialLinearSolver, Steady2DdiffusionQuadElem)
     using LocalMatrixType = MathLib::DenseMatrix<double>;
     using LocalVectorType = MathLib::DenseVector<double>;
 
-    std::vector<LocalAssemblerData<LocalMatrixType, LocalVectorType>*>
+    std::vector<SteadyDiffusion2DExample1::LocalAssemblerData*>
         local_assembler_data;
     local_assembler_data.resize(ex1.msh->getNElements());
 
     typedef AssemblerLib::LocalAssemblerBuilder<
             MeshLib::Element,
             void (const MeshLib::Element &,
-                    LocalAssemblerData<LocalMatrixType, LocalVectorType> *&,
+                    SteadyDiffusion2DExample1::LocalAssemblerData *&,
                     SteadyDiffusion2DExample1 const&)
                 > LocalAssemblerBuilder;