/* * Project: MoleCuilder * Description: creates and alters molecular systems * Copyright (C) 2010 University of Bonn. All rights reserved. * Please see the LICENSE file or "Copyright notice" in builder.cpp for details. */ /* * ChronosUnitTest.cpp */ // include config.h #ifdef HAVE_CONFIG_H #include #endif using namespace std; #include #include #include #include "Chronos.hpp" #include "Info.hpp" #include "ChronosUnitTest.hpp" #ifdef HAVE_TESTRUNNER #include "UnitTestMain.hpp" #endif /*HAVE_TESTRUNNER*/ /********************************************** Test classes **************************************/ // Registers the fixture into the 'registry' CPPUNIT_TEST_SUITE_REGISTRATION( ChronosTest ); void dummy() { Info FunctionInfo(__func__); } void dummy_two() { Info FunctionInfo(__func__); } void ChronosTest::setUp() { } void ChronosTest::tearDown() { Chronos::purgeInstance(); } /** * UnitTest for Chronos() */ void ChronosTest::InstanceTest() { // check that we get a Non-NULL pointer CPPUNIT_ASSERT(Chronos::getPointer()); } /** * UnitTest for Chronos() */ void ChronosTest::InfoTest() { Info FunctionInfo(__func__); CPPUNIT_ASSERT_EQUAL( (size_t) 1, Info::NumberInfos ); } /** * UnitTest for Chronos() */ void ChronosTest::dummyTest() { // first dummy dummy(); CPPUNIT_ASSERT( Chronos::getInstance().IsTimeRunning.find(std::string("dummy")) != Chronos::getInstance().IsTimeRunning.end() ); CPPUNIT_ASSERT_EQUAL( (size_t) 1, Chronos::getInstance().SumUpTotalFunctions() ); dummy(); // second call goes to same entry CPPUNIT_ASSERT_EQUAL( (size_t) 1, Chronos::getInstance().SumUpTotalFunctions() ); // second dummy dummy_two(); CPPUNIT_ASSERT( Chronos::getInstance().IsTimeRunning.find(std::string("dummy_two")) != Chronos::getInstance().IsTimeRunning.end() ); CPPUNIT_ASSERT_EQUAL( (size_t) 2, Chronos::getInstance().SumUpTotalFunctions() ); }