| 55 |  | b(2, 0) = 0.0; | 
| 56 |  | b(2, 1) = 0.0; | 
| 57 |  |  | 
| 58 | < |  | 
| 58 | > | c(0, 0) = 1.0; | 
| 59 | > | c(0, 1) = 0.0; | 
| 60 | > | c(1, 0) = 0.0; | 
| 61 | > | c(1, 1) = 1.0; | 
| 62 | > |  | 
| 63 | > | d(0, 0) = 1.0; | 
| 64 | > | d(0, 1) = 0.0; | 
| 65 | > | d(0, 2) = 0.0; | 
| 66 | > | d(1, 0) = 0.0; | 
| 67 | > | d(1, 1) = 0.0; | 
| 68 | > | d(1, 2) = 1.0; | 
| 69 | > | d(2, 0) = 0.0; | 
| 70 | > | d(2, 1) = 1.0; | 
| 71 | > | d(2, 2) = 0.0; | 
| 72 | > |  | 
| 73 | > | e(0, 0) = 2.0; | 
| 74 | > | e(0, 1) = 4.0; | 
| 75 | > | e(0, 2) = 1.0; | 
| 76 | > | e(1, 0) = 0.0; | 
| 77 | > | e(1, 1) = 0.0; | 
| 78 | > | e(1, 2) = 3.0; | 
| 79 | > | e(2, 0) = 0.0; | 
| 80 | > | e(2, 1) = 6.0; | 
| 81 | > | e(2, 2) = 5.0; | 
| 82 | > |  | 
| 83 | > | f(0, 0) = 2.0; | 
| 84 | > | f(0, 1) = 4.0; | 
| 85 | > | f(0, 2) = 1.0; | 
| 86 | > | f(1, 0) = 0.0; | 
| 87 | > | f(1, 1) = 6.0; | 
| 88 | > | f(1, 2) = 5.0; | 
| 89 | > | f(2, 0) = 0.0; | 
| 90 | > | f(2, 1) = 0.0; | 
| 91 | > | f(2, 2) = 3.0; | 
| 92 | > |  | 
| 93 | > | f(0, 0) = 2.0; | 
| 94 | > | f(0, 1) = 4.0; | 
| 95 | > | f(0, 2) = 1.0; | 
| 96 | > | f(1, 0) = 0.0; | 
| 97 | > | f(1, 1) = 6.0; | 
| 98 | > | f(1, 2) = 5.0; | 
| 99 | > | f(2, 0) = 0.0; | 
| 100 | > | f(2, 1) = 0.0; | 
| 101 | > | f(2, 2) = 3.0; | 
| 102 | > |  | 
| 103 | > | g(0, 0) = 1.0; | 
| 104 | > | g(0, 1) = 0.0; | 
| 105 | > | g(0, 2) = 0.0; | 
| 106 | > | g(1, 0) = -2.0; | 
| 107 | > | g(1, 1) = 1.0; | 
| 108 | > | g(1, 2) = 0.0; | 
| 109 | > | g(2, 0) = 0.0; | 
| 110 | > | g(2, 1) = 0.0; | 
| 111 | > | g(2, 2) = 1.0; | 
| 112 | > |  | 
| 113 | > | h(0, 0) = 2.0; | 
| 114 | > | h(0, 1) = 4.0; | 
| 115 | > | h(0, 2) = -2.0; | 
| 116 | > | h(0, 3) = 2.0; | 
| 117 | > | h(1, 0) = 4.0; | 
| 118 | > | h(1, 1) = 9.0; | 
| 119 | > | h(1, 2) = -3.0; | 
| 120 | > | h(1, 3) = 8.0; | 
| 121 | > | h(2, 0) = -2.0; | 
| 122 | > | h(2, 1) = -3.0; | 
| 123 | > | h(2, 2) = 7.0; | 
| 124 | > | h(2, 3) = 10.0; | 
| 125 | > |  | 
| 126 | > | i(0, 0) = 2.0; | 
| 127 | > | i(0, 1) = 4.0; | 
| 128 | > | i(0, 2) = -2.0; | 
| 129 | > | i(0, 3) = 2.0; | 
| 130 | > | i(1, 0) = 0.0; | 
| 131 | > | i(1, 1) = 1.0; | 
| 132 | > | i(1, 2) = 1.0; | 
| 133 | > | i(1, 3) = 4.0; | 
| 134 | > | i(2, 0) = -2.0; | 
| 135 | > | i(2, 1) = -3.0; | 
| 136 | > | i(2, 2) = 7.0; | 
| 137 | > | i(2, 3) = 10.0; | 
| 138 | > |  | 
| 139 | > |  | 
| 140 | > | v1(0) = 2.0; | 
| 141 | > | v1(1) = 4.0; | 
| 142 | > | v1(2) = -2.0; | 
| 143 | > |  | 
| 144 | > | v2(0) = 2.0; | 
| 145 | > | v2(1) = 0.0; | 
| 146 | > | v2(2) = -2.0; | 
| 147 | > |  | 
| 148 |  | } | 
| 149 |  |  | 
| 150 |  | void RectMatrixTestCase::testConstructor(){ | 
| 171 |  |  | 
| 172 |  | void RectMatrixTestCase::testEqual() { | 
| 173 |  | CPPUNIT_ASSERT(m2 == m3); | 
| 174 | + | CPPUNIT_ASSERT(m2 != m3); | 
| 175 | + |  | 
| 176 |  | } | 
| 177 |  |  | 
| 178 |  | void RectMatrixTestCase::testNegate() { | 
| 220 |  | CPPUNIT_ASSERT(m1 * 1.0 == m1); | 
| 221 |  | CPPUNIT_ASSERT(m1 * 0.0 == zero); | 
| 222 |  | CPPUNIT_ASSERT(2.0 *m1 == m1 + m1); | 
| 223 | < |  | 
| 223 | > |  | 
| 224 | > | //test matrix multiplication | 
| 225 | > | CPPUNIT_ASSERT(a * b == c); | 
| 226 | > | CPPUNIT_ASSERT(d  * e == f); | 
| 227 | > | CPPUNIT_ASSERT(g  * h == i); | 
| 228 | > |  | 
| 229 | > | //test matrix vector multiplication | 
| 230 | > | CPPUNIT_ASSERT(g  * v1 == v2); | 
| 231 | > |  | 
| 232 |  | } | 
| 233 |  |  | 
| 234 |  | void RectMatrixTestCase::testDiv() { | 
| 240 |  | } | 
| 241 |  |  | 
| 242 |  | void RectMatrixTestCase::testAccessEntries(){ | 
| 243 | < | CPPUNIT_ASSERT(m1(1, 0) == 3.0); | 
| 243 | > | CPPUNIT_ASSERT_DOUBLES_EQUAL(m1(1, 0), 3.0, oopse::epsilon); | 
| 244 |  | } | 
| 245 |  |  | 
| 246 |  | void RectMatrixTestCase::testTranspose(){ |