source: molecuilder/src/unittests/logunittest.cpp@ 1f2e46

Last change on this file since 1f2e46 was 1f2e46, checked in by Frederik Heber <heber@…>, 16 years ago

Huge change: Log() << Verbose(.) --> DoLog(.) && (Log() << Verbose(.) << ...);

Most of the files are affected, but this is necessary as if DoLog() says verbosity is not enough, all the stream operators won"t get executed which saves substantial amount of computation time.

Signed-off-by: Frederik Heber <heber@…>

  • Property mode set to 100644
File size: 2.0 KB
Line 
1/*
2 * logunittest.cpp
3 */
4
5
6using namespace std;
7
8#include <cppunit/CompilerOutputter.h>
9#include <cppunit/extensions/TestFactoryRegistry.h>
10#include <cppunit/ui/text/TestRunner.h>
11
12#include "logunittest.hpp"
13#include "log.hpp"
14#include "defs.hpp"
15#include "verbose.hpp"
16
17/********************************************** Test classes **************************************/
18
19// Registers the fixture into the 'registry'
20CPPUNIT_TEST_SUITE_REGISTRATION( LogTest );
21
22
23void LogTest::setUp()
24{
25};
26
27void LogTest::tearDown()
28{
29};
30
31/**
32 * UnitTest for log()
33 */
34void LogTest::logTest()
35{
36 logger::getInstance()->setVerbosity(2);
37 DoLog(0) && (Log() << Verbose(0) << "Verbosity level is set to 2." << endl);
38 DoLog(0) && (Log() << Verbose(0) << "Test level 0" << endl);
39 DoLog(1) && (Log() << Verbose(1) << "Test level 1" << endl);
40 DoLog(2) && (Log() << Verbose(2) << "Test level 2" << endl);
41 DoLog(3) && (Log() << Verbose(3) << "Test level 3" << endl);
42 DoLog(4) && (Log() << Verbose(4) << "Test level 4" << endl);
43
44 DoLog(0) && (Log() << Verbose(0) << "Output a log message." << endl);
45 DoeLog(0) && (eLog()<< Verbose(0) << "Output an error message." << endl);
46 setVerbosity(3);
47 DoLog(4) && (Log() << Verbose(4) << "This should not be printed." << endl);
48 DoeLog(4) && (eLog()<< Verbose(4) << "This should not be printed." << endl);
49};
50
51
52/********************************************** Main routine **************************************/
53
54int main(int argc, char **argv)
55{
56 // Get the top level suite from the registry
57 CppUnit::Test *suite = CppUnit::TestFactoryRegistry::getRegistry().makeTest();
58
59 // Adds the test to the list of test to run
60 CppUnit::TextUi::TestRunner runner;
61 runner.addTest( suite );
62
63 // Change the default outputter to a compiler error format outputter
64 runner.setOutputter( new CppUnit::CompilerOutputter( &runner.result(),
65 std::cerr ) );
66 // Run the tests.
67 bool wasSucessful = runner.run();
68
69 // Return error code 1 if the one of test failed.
70 return wasSucessful ? 0 : 1;
71};
Note: See TracBrowser for help on using the repository browser.