|
Server : Apache/2.2.17 (Unix) mod_ssl/2.2.17 OpenSSL/0.9.8e-fips-rhel5 DAV/2 PHP/5.2.17 System : Linux localhost 2.6.18-419.el5 #1 SMP Fri Feb 24 22:47:42 UTC 2017 x86_64 User : nobody ( 99) PHP Version : 5.2.17 Disable Function : NONE Directory : /proc/21571/root/usr/include/boost/date_time/ |
Upload File : |
#ifndef TEST_FRMWK_HPP___
#define TEST_FRMWK_HPP___
/* Copyright (c) 2002,2003 CrystalClear Software, Inc.
* Use, modification and distribution is subject to the
* Boost Software License, Version 1.0. (See accompanying
* file LICENSE-1.0 or http://www.boost.org/LICENSE-1.0)
* $Date: 2003/11/23 03:29:56 $
*/
#include <iostream>
#include <string>
//! Really simple test framework for counting and printing
class TestStats
{
public:
static TestStats& instance() {static TestStats ts; return ts;}
void addPassingTest() {testcount_++; passcount_++;}
void addFailingTest() {testcount_++;}
unsigned int testcount() const {return testcount_;}
unsigned int passcount() const {return passcount_;}
void print(std::ostream& out = std::cout) const
{
out << testcount_ << " Tests Executed: " ;
if (passcount() != testcount()) {
out << (testcount() - passcount()) << " FAILURES";
}
else {
out << "All Succeeded" << std::endl;
}
out << std::endl;
}
private:
TestStats() : testcount_(0), passcount_(0) {}
unsigned int testcount_;
unsigned int passcount_;
};
bool check(const std::string& testname, bool testcond)
{
TestStats& stat = TestStats::instance();
if (testcond) {
std::cout << "Pass :: " << testname << " " << std::endl;
stat.addPassingTest();
return true;
}
else {
stat.addFailingTest();
std::cout << "FAIL :: " << testname << " " << std::endl;
return false;
}
}
int printTestStats()
{
TestStats& stat = TestStats::instance();
stat.print();
return stat.testcount() - stat.passcount();
}
#endif