From 873dafcc82340c6f305063172c8c7f4628198b71 Mon Sep 17 00:00:00 2001
From: Olivier Stasse <ostasse@laas.fr>
Date: Mon, 26 Aug 2019 17:10:40 +0200
Subject: [PATCH] [debug] Add toString logger tests + uncomment line used for
 scalar types.

---
 include/dynamic-graph/logger.h | 12 ++++++------
 tests/debug-logger.cpp         | 11 ++++++++++-
 2 files changed, 16 insertions(+), 7 deletions(-)

diff --git a/include/dynamic-graph/logger.h b/include/dynamic-graph/logger.h
index 0a62dc1..884c943 100644
--- a/include/dynamic-graph/logger.h
+++ b/include/dynamic-graph/logger.h
@@ -61,7 +61,7 @@ namespace dynamicgraph {
 #define SEND_WARNING_STREAM_MSG(msg) SEND_MSG(msg, MSG_TYPE_WARNING_STREAM)
 #define SEND_ERROR_STREAM_MSG(msg) SEND_MSG(msg, MSG_TYPE_ERROR_STREAM)
 
-/*template<typename T>
+template<typename T>
 std::string toString(const T& v, const int precision=3, const int width=-1)
 {
   std::stringstream ss;
@@ -70,20 +70,20 @@ std::string toString(const T& v, const int precision=3, const int width=-1)
   else
     ss<<std::fixed<<std::setprecision(precision)<<v;
   return ss.str();
-}*/
+}
 
 template <typename T>
 std::string toString(const std::vector<T> &v, const int precision = 3,
                      const int width = -1, const std::string separator = ", ") {
   std::stringstream ss;
   if (width > precision) {
-    for (int i = 0; i < v.size() - 1; i++)
+    for (unsigned int i = 0; i < v.size() - 1; i++)
       ss << std::fixed << std::setw(width) << std::setprecision(precision)
          << v[i] << separator;
     ss << std::fixed << std::setw(width) << std::setprecision(precision)
        << v[v.size() - 1];
   } else {
-    for (int i = 0; i < v.size() - 1; i++)
+    for (unsigned int i = 0; i < v.size() - 1; i++)
       ss << std::fixed << std::setprecision(precision) << v[i] << separator;
     ss << std::fixed << std::setprecision(precision) << v[v.size() - 1];
   }
@@ -96,13 +96,13 @@ std::string toString(const Eigen::MatrixBase<T> &v, const int precision = 3,
                      const int width = -1, const std::string separator = ", ") {
   std::stringstream ss;
   if (width > precision) {
-    for (int i = 0; i < v.size() - 1; i++)
+    for (unsigned int i = 0; i < v.size() - 1; i++)
       ss << std::fixed << std::setw(width) << std::setprecision(precision)
          << v[i] << separator;
     ss << std::fixed << std::setw(width) << std::setprecision(precision)
        << v[v.size() - 1];
   } else {
-    for (int i = 0; i < v.size() - 1; i++)
+    for (unsigned int i = 0; i < v.size() - 1; i++)
       ss << std::fixed << std::setprecision(precision) << v[i] << separator;
     ss << std::setprecision(precision) << v[v.size() - 1];
   }
diff --git a/tests/debug-logger.cpp b/tests/debug-logger.cpp
index d6b9ed9..db15ee0 100644
--- a/tests/debug-logger.cpp
+++ b/tests/debug-logger.cpp
@@ -50,7 +50,16 @@ public:
             MSG_TYPE_WARNING_STREAM);
     sendMsg("This is a message of level MSG_TYPE_ERROR_STREAM",
             MSG_TYPE_ERROR_STREAM);
-
+    /* Add test toString */
+    double q=1.0;
+    sendMsg("Value to display: "+toString(q));
+    std::vector<double> vq;
+    vq.resize(3);
+    vq[0] = 1.0; vq[1] = 2.0; vq[2] = 3.0;
+    sendMsg("Value to display: "+toString(vq));
+    Eigen::Matrix<double,3,3> an_eig_m;
+    an_eig_m.Ones();
+    sendMsg("Value to display: "+toString(an_eig_m));
     logger_.countdown();
   }
 };
-- 
GitLab