Revision 4:d8724c5a6d83 Tester.cpp

View differences:

Tester.cpp
46 46
#include <cstring>
47 47
#include <cstdlib>
48 48
#include <cmath>
49
#include <set>
49 50

  
50 51
#include "Tester.h"
51 52

  
......
75 76
}
76 77

  
77 78
bool
78
Tester::test()
79
Tester::test(int &notes, int &warnings, int &errors)
79 80
{
80 81
    /*
81 82
      
......
152 153
            Test *test = i->second->makeTest();
153 154
            Test::Results results = test->test(m_key);
154 155
            delete test;
156

  
157
            set<string> printed;
155 158
            
156 159
            for (int j = 0; j < (int)results.size(); ++j) {
160
                string message = results[j].message();
161
                if (printed.find(message) != printed.end()) continue;
162
                printed.insert(message);
157 163
                switch (results[j].code()) {
158 164
                case Test::Result::Success:
159 165
                    break;
160 166
                case Test::Result::Note:
161 167
                    std::cout << " ** NOTE: " << results[j].message() << std::endl;
168
                    ++notes;
162 169
                    break;
163 170
                case Test::Result::Warning:
164 171
                    std::cout << " ** WARNING: " << results[j].message() << std::endl;
172
                    ++warnings;
165 173
                    break;
166 174
                case Test::Result::Error:
167 175
                    std::cout << " ** ERROR: " << results[j].message() << std::endl;
176
                    ++errors;
168 177
                    good = false;
169 178
                    break;
170 179
                }

Also available in: Unified diff