commit 6fd6aad2b033cc3cf113d92de26c0b4367cffd91
Author: Sven Hesse <drmccoy@users.sourceforge.net>
Date: Thu May 13 20:22:11 2010 +0200
Adding a small unit test for Common::Rational's operators
diff --git a/test/common/rational.h b/test/common/rational.h
new file mode 100644
index 0000000..f1a4ea6
-
|
+
|
|
| 1 | #include <cxxtest/TestSuite.h> |
| 2 | |
| 3 | #include "common/rational.h" |
| 4 | |
| 5 | class RationalTestSuite : public CxxTest::TestSuite { |
| 6 | public: |
| 7 | void test_operators() { |
| 8 | Common::Rational r0(6, 3); |
| 9 | Common::Rational r1(1, 2); |
| 10 | |
| 11 | Common::Rational r2(62, 2); |
| 12 | Common::Rational r3(34, 4); |
| 13 | |
| 14 | Common::Rational r4 = (r0 + r1) * 3; |
| 15 | Common::Rational r5 = (r2 - r3) / 3; |
| 16 | |
| 17 | Common::Rational r6 = r5 - 1; |
| 18 | |
| 19 | TS_ASSERT(r4 == r5); |
| 20 | |
| 21 | TS_ASSERT(-r4 == -r5); |
| 22 | |
| 23 | TS_ASSERT( r4 > r6); |
| 24 | TS_ASSERT( r4 >= r6); |
| 25 | TS_ASSERT(!(r4 < r6)); |
| 26 | TS_ASSERT(!(r4 <= r6)); |
| 27 | |
| 28 | TS_ASSERT( r4 > 7); |
| 29 | TS_ASSERT( r4 >= 7); |
| 30 | TS_ASSERT(!(r4 < 7)); |
| 31 | TS_ASSERT(!(r4 <= 7)); |
| 32 | |
| 33 | TS_ASSERT( 7 < r4); |
| 34 | TS_ASSERT( 7 <= r4); |
| 35 | TS_ASSERT(!(7 > r4)); |
| 36 | TS_ASSERT(!(7 >= r4)); |
| 37 | } |
| 38 | }; |