testTestTuple.cc
Go to the documentation of this file.
1 
12 #include <tst/Verify.h>
13 #include <utl/Triple.h>
14 
15 #include <cppunit/extensions/HelperMacros.h>
16 
17 using namespace utl;
18 using namespace tst;
19 
20 
24 class testTestTuple : public CppUnit::TestFixture {
25 
26  CPPUNIT_TEST_SUITE(testTestTuple);
27  CPPUNIT_TEST(testTupleClose);
28  CPPUNIT_TEST_SUITE_END();
29 
30 public:
31  void setUp() { }
32 
33  void tearDown() { }
34 
35  void
37  {
38  const Triple zero(0,0,0);
39  Triple verySmall(1e-8, 2e-8, 0);
40  Triple small1(1e-6, 2e-6, 0);
41  Triple small2(0, 1e-6, 2e-6);
42  Triple small3(1e-6, 0, 2e-6);
43 
44  CPPUNIT_ASSERT(Verify<CloseTo>(zero, Triple(0,0,0)));
45  tst::Expected();
46  CPPUNIT_ASSERT(!Verify<Not<CloseTo> >(zero, Triple(0,0,0)));
47 
48  CPPUNIT_ASSERT(Verify<CloseTo>(verySmall, zero));
49  tst::Expected();
50  CPPUNIT_ASSERT(!Verify<Not<CloseTo> >(verySmall, zero));
51 
52  CPPUNIT_ASSERT(Verify<Not<CloseTo> >(small1, zero));
53  tst::Expected();
54  CPPUNIT_ASSERT(!Verify<CloseTo>(small1, zero));
55 
56  CPPUNIT_ASSERT(Verify<Not<CloseTo> >(small2, zero));
57  tst::Expected();
58  CPPUNIT_ASSERT(!Verify<CloseTo>(small2, zero));
59 
60  CPPUNIT_ASSERT(Verify<Not<CloseTo> >(small3, zero));
61  tst::Expected();
62  CPPUNIT_ASSERT(!Verify<CloseTo>(small3, zero));
63 
64  CPPUNIT_ASSERT(Verify<Not<CloseTo> >(zero, Triple(1,0,0)));
65  tst::Expected();
66  CPPUNIT_ASSERT(!Verify<CloseTo>(zero, Triple(1,0,0)));
67 
68  CPPUNIT_ASSERT(Verify<Not<CloseTo> >(small3, Triple(1,0,0)));
69  tst::Expected();
70  CPPUNIT_ASSERT(!Verify<CloseTo>(small3, Triple(1,0,0)));
71 
72  CPPUNIT_ASSERT(Verify<CloseTo>(zero, small1, 1e-5));
73  tst::Expected();
74  CPPUNIT_ASSERT(!Verify<Not<CloseTo> >(zero, small1, 1e-5));
75 
76  CPPUNIT_ASSERT(Verify<CloseTo>(zero, small2, 1e-5));
77  tst::Expected();
78  CPPUNIT_ASSERT(!Verify<Not<CloseTo> >(zero, small2, 1e-5));
79 
80  CPPUNIT_ASSERT(Verify<CloseTo>(zero, small3, 1e-5));
81  tst::Expected();
82  CPPUNIT_ASSERT(!Verify<Not<CloseTo> >(zero, small3, 1e-5));
83 
84  Triple large(-1e6, 2e4, 3e5);
85  Triple largeEps = large;
86  largeEps.get<0>() += 1;
87 
88  CPPUNIT_ASSERT(Verify<CloseTo>(large, largeEps, 5e-6));
89  tst::Expected();
90  CPPUNIT_ASSERT(!Verify<Not<CloseTo> >(large, largeEps, 5e-6));
91 
92  CPPUNIT_ASSERT(Verify<Not<CloseTo> >(large, largeEps, 5e-7));
93  tst::Expected();
94  CPPUNIT_ASSERT(!Verify<CloseTo>(large, largeEps, 5e-7));
95  }
96 
97 };
98 
99 
101 
102 
103 // Configure (x)emacs for this file ...
104 // Local Variables:
105 // mode:c++
106 // compile-command: "make -C .. -k testTesting && ../testTesting"
107 // End:
CPPUNIT_TEST_SUITE_REGISTRATION(testAiresShowerFile)
Definition: Test.h:180
boost::tuple< double, double, double > Triple
Coordinate triple for easy getting or setting of coordinates.
Definition: Triple.h:15
bool Verify(const Predicate &pred, const T &lhs, const T &rhs)
Test condition by evaluating a predicate and print on failure.
Definition: Verify.h:38
void testTupleClose()
void Expected()
Print `Expected&#39; for expected failures.
Definition: Verify.h:85

, generated on Tue Sep 26 2023.