~ubuntu-branches/ubuntu/saucy/deal.ii/saucy

« back to all changes in this revision

Viewing changes to contrib/boost/include/boost/date_time/testfrmwk.hpp

  • Committer: Bazaar Package Importer
  • Author(s): Adam C. Powell, IV
  • Date: 2009-05-08 23:13:50 UTC
  • Revision ID: james.westby@ubuntu.com-20090508231350-rrh1ltgi0tifabwc
Tags: upstream-6.2.0
ImportĀ upstreamĀ versionĀ 6.2.0

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
 
 
2
#ifndef TEST_FRMWK_HPP___
 
3
#define TEST_FRMWK_HPP___
 
4
 
 
5
/* Copyright (c) 2002,2003 CrystalClear Software, Inc.
 
6
 * Use, modification and distribution is subject to the 
 
7
 * Boost Software License, Version 1.0. (See accompanying
 
8
 * file LICENSE_1_0.txt or http://www.boost.org/LICENSE_1_0.txt)
 
9
 * $Date: 2008-03-26 17:16:15 -0400 (Wed, 26 Mar 2008) $
 
10
 */
 
11
 
 
12
 
 
13
#include <iostream>
 
14
#include <string>
 
15
 
 
16
//! Really simple test framework for counting and printing
 
17
class TestStats
 
18
{
 
19
public:
 
20
  static TestStats& instance() {static TestStats ts; return ts;}
 
21
  void addPassingTest() {testcount_++; passcount_++;}
 
22
  void addFailingTest() {testcount_++;}
 
23
  unsigned int testcount() const {return testcount_;}
 
24
  unsigned int passcount() const {return passcount_;}
 
25
  void print(std::ostream& out = std::cout) const
 
26
  {
 
27
    out << testcount_ << " Tests Executed: " ;
 
28
    if (passcount() != testcount()) {
 
29
      out << (testcount() - passcount()) << " FAILURES";
 
30
    }
 
31
    else {
 
32
      out << "All Succeeded" << std::endl;
 
33
    }
 
34
    out << std::endl;
 
35
  }
 
36
private:  
 
37
  TestStats() : testcount_(0), passcount_(0) {}
 
38
  unsigned int testcount_;
 
39
  unsigned int passcount_;
 
40
};
 
41
 
 
42
 
 
43
bool check(const std::string& testname, bool testcond) 
 
44
{
 
45
  TestStats& stat = TestStats::instance();
 
46
  if (testcond) {
 
47
    std::cout << "Pass :: " << testname << " " <<  std::endl;
 
48
    stat.addPassingTest();
 
49
    return true;
 
50
  }
 
51
  else {
 
52
    stat.addFailingTest();
 
53
    std::cout << "FAIL :: " << testname << " " <<  std::endl;
 
54
    return false;
 
55
  }
 
56
}
 
57
 
 
58
 
 
59
int printTestStats() 
 
60
{
 
61
  TestStats& stat = TestStats::instance();
 
62
  stat.print();
 
63
  return stat.testcount() - stat.passcount();
 
64
}
 
65
 
 
66
#endif