diff --git a/unittest/matrix.cpp b/unittest/matrix.cpp
index 95f97da556c41ade052a664f7552799a0425972e..e202c572b878aca945885092100de509e225f1dc 100644
--- a/unittest/matrix.cpp
+++ b/unittest/matrix.cpp
@@ -19,6 +19,11 @@ Eigen::Matrix<Scalar, Eigen::Dynamic, Eigen::Dynamic> matrix1x1(
   return ReturnType::Constant(1, 1, value);
 }
 
+template <typename Scalar>
+void matrix1x1_input(const Eigen::Matrix<Scalar, 1, 1>& mat) {
+  std::cout << mat << std::endl;
+}
+
 Eigen::VectorXd emptyVector() {
   Eigen::VectorXd vec;
   vec.resize(0);
@@ -146,6 +151,8 @@ BOOST_PYTHON_MODULE(matrix) {
 
   bp::def("vector1x1", vector1x1<double>);
   bp::def("matrix1x1", matrix1x1<double>);
+  bp::def("matrix1x1", matrix1x1_input<double>);
+  bp::def("matrix1x1_int", matrix1x1_input<int>);
 
   bp::def("naturals", naturalsXX);
   bp::def("naturalsX", naturalsX);
diff --git a/unittest/python/test_matrix.py b/unittest/python/test_matrix.py
index 0edf1889683ea57f828bcd44ca668f266ed4b91d..af384c837148759ef9ccbdd020ecc3e4c90e7ba6 100644
--- a/unittest/python/test_matrix.py
+++ b/unittest/python/test_matrix.py
@@ -15,6 +15,10 @@ if verbose:
 v = eigenpy.emptyVector()
 assert v.shape == (0,)
 
+if verbose:
+    print("===> From Py to Matrix1")
+eigenpy.matrix1x1(np.array([1]))
+
 if verbose:
     print("===> From MatrixXd to Py")
 M = eigenpy.naturals(3, 3, verbose)