Parcourir la source

[4271] Debug in LogContnetTest class implemented.

Tomek Mrugalski il y a 8 ans
Parent
commit
30cdc3cbd8
2 fichiers modifiés avec 25 ajouts et 2 suppressions
  1. 17 2
      src/lib/testutils/log_utils.cc
  2. 8 0
      src/lib/testutils/log_utils.h

+ 17 - 2
src/lib/testutils/log_utils.cc

@@ -5,12 +5,14 @@
 // file, You can obtain one at http://mozilla.org/MPL/2.0/.
 
 #include <testutils/log_utils.h>
+#include <iostream>
 
 namespace isc {
 namespace dhcp {
 namespace test {
 
-LogContentTest::LogContentTest() {
+LogContentTest::LogContentTest()
+    :verbose_(false) {
     // Get rid of any old files
     remFile();
 
@@ -41,18 +43,31 @@ bool LogContentTest::checkFile() {
     int i = 0;
     bool found = true;
 
+    using namespace std;
+
     while (getline(file, line) && (i != exp_strings_.size())) {
         exp_line = exp_strings_[i];
+        if (verbose_) {
+            cout << "Read line  :" << line << endl;
+            cout << "Looking for:" << exp_line << endl;
+        }
         i++;
         if (string::npos == line.find(exp_line)) {
+            if (verbose_) {
+                cout << "Verdict    : not found" << endl;
+            }
             found = false;
         }
     }
 
     file.close();
 
-    if ((i != exp_strings_.size()) || (found == false))
+    if ((i != exp_strings_.size()) || (found == false)) {
+        if (verbose_) {
+            cout << "Final verdict: false" << endl;
+        }
         return (false);
+    }
 
     return (true);
 }

+ 8 - 0
src/lib/testutils/log_utils.h

@@ -63,6 +63,12 @@ public:
     /// @brief remove the test log file
     void remFile();
 
+    /// @brief Enables or disables verbose mode.
+    /// @param talk_a_lot (true - as the name says, false - shut up)
+    void logCheckVerbose(bool talk_a_lot) {
+        verbose_ = talk_a_lot;
+    }
+
     /// @brief Add a string to the vector of expected strings
     ///
     /// @param new_string the string to add to the end of the vector
@@ -71,6 +77,8 @@ public:
 
     vector<string> exp_strings_;
     static const char* LOG_FILE;
+
+    bool verbose_;
 };