ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/OpenMD/trunk/test/math/VectorTestCase.cpp
(Generate patch)

Comparing trunk/test/math/VectorTestCase.cpp (file contents):
Revision 101 by tim, Mon Oct 18 23:13:23 2004 UTC vs.
Revision 151 by tim, Mon Oct 25 22:46:19 2004 UTC

# Line 167 | Line 167 | void VectorTestCase::testOperators(){
167      //test mul
168      Vec4 a6;
169      a6 = one;
170 <    a6.mul(2.0);
170 >    a6 *= 2.0;
171      CPPUNIT_ASSERT( a6 == two);      
172  
173      Vec4 a7;
174 <    a7.mul(one, 2.0);
174 >    a7 =  one * 2.0;
175      CPPUNIT_ASSERT( a7 == two);      
176 <    Vec4 a8;
177 <    a7.mul(zero, 2.0);
178 <    CPPUNIT_ASSERT( a7 == zero);      
176 >    a7 =  2.0 * one;
177 >    CPPUNIT_ASSERT( a7 == two);      
178  
179      //test div
180 <    Vec4 a9;
181 <    a9 = two;
182 <    a9.div(2.0);
183 <    CPPUNIT_ASSERT( a9 == one);      
184 <
185 <    Vec4 a10;
187 <    a10.div(two, 2.0);
188 <    CPPUNIT_ASSERT( a10 == one);      
189 <    Vec4 a11;
190 <    a11.mul(zero, 2.0);
191 <    CPPUNIT_ASSERT( a11 == zero);  
192 <
180 >    Vec4 a8;
181 >    a8 = two;
182 >    a8 /= 2.0;
183 >    CPPUNIT_ASSERT( a8 == one);      
184 >    a8 = two /2.0;
185 >    CPPUNIT_ASSERT( a8 == one);      
186   }
187  
188   void VectorTestCase::testAccessEntries(){
189 <    CPPUNIT_ASSERT(zero[0] == 0.0);
197 <    CPPUNIT_ASSERT(one[0] == 1.0);
198 <    CPPUNIT_ASSERT(v3[0] == 4.0);
189 >    //test [] operator
190  
191 <    CPPUNIT_ASSERT(v3(0) != 1.0);
191 >    CPPUNIT_ASSERT_DOUBLES_EQUAL(zero[0], 0.0, oopse::epsilon);
192 >    CPPUNIT_ASSERT_DOUBLES_EQUAL(one[0] , 1.0, oopse::epsilon);
193 >    CPPUNIT_ASSERT_DOUBLES_EQUAL(v3[0] , 4.0, oopse::epsilon);
194 >    //test () operator
195 >    CPPUNIT_ASSERT_DOUBLES_EQUAL(v3(0) , 4.0, oopse::epsilon);
196  
197 +    Vec4 a1;
198 +    double *pa1 = a1.getArrayPointer();
199 +    
200 +    pa1[0] = 4.0;
201 +    pa1[1] = 1.0;
202 +    pa1[2] = 3.0;
203 +    pa1[3] = 2.0;        
204 +
205 +    CPPUNIT_ASSERT(a1 == v3);    
206   }
207  
208 + void VectorTestCase::testOtherMemberFunctions(){
209 +    //test length()
210 +    CPPUNIT_ASSERT_DOUBLES_EQUAL(zero.length(), 0.0, oopse::epsilon);
211 +    CPPUNIT_ASSERT_DOUBLES_EQUAL(one.length(), 2.0, oopse::epsilon);
212 +    CPPUNIT_ASSERT_DOUBLES_EQUAL(v2.length(), sqrt(14.0), oopse::epsilon);
213 +    
214 +    //test lengthSquare()
215 +    CPPUNIT_ASSERT_DOUBLES_EQUAL(zero.lengthSquare(), 0.0, oopse::epsilon);
216 +    CPPUNIT_ASSERT_DOUBLES_EQUAL(one.lengthSquare(), 4.0, oopse::epsilon);
217 +    CPPUNIT_ASSERT_DOUBLES_EQUAL(v2.lengthSquare(), 14.0, oopse::epsilon);
218 +
219 +    //test normalize()
220 +    Vec4 a1 = one;
221 +    Vec4 a2 = two;
222 +
223 +    a1.normalize();
224 +    a2.normalize();
225 +    CPPUNIT_ASSERT(a1 == a2);
226 +
227 +    //test isNormalized();
228 +    CPPUNIT_ASSERT(a1.isNormalized());
229 +    CPPUNIT_ASSERT(!one.isNormalized());
230 +
231 +    //test getArray
232 +    double tempV[4];
233 +    v3.getArray(tempV);
234 +    CPPUNIT_ASSERT_DOUBLES_EQUAL(tempV[0], v3[0], oopse::epsilon);
235 +    CPPUNIT_ASSERT_DOUBLES_EQUAL(tempV[1], v3[1], oopse::epsilon);
236 +    CPPUNIT_ASSERT_DOUBLES_EQUAL(tempV[2], v3[2], oopse::epsilon);
237 +    CPPUNIT_ASSERT_DOUBLES_EQUAL(tempV[3], v3[3], oopse::epsilon);
238 + }
239   void VectorTestCase::testOtherTemplateFunctions(){        
240 +    //test dot
241 +    CPPUNIT_ASSERT_DOUBLES_EQUAL(dot(one, two), 8.0, oopse::epsilon);
242 +    CPPUNIT_ASSERT_DOUBLES_EQUAL(dot(v1, v3), 20.0, oopse::epsilon);
243  
244 +    //test distance
245 +    CPPUNIT_ASSERT_DOUBLES_EQUAL(distance(one, two), 2.0, oopse::epsilon);    
246 +    CPPUNIT_ASSERT_DOUBLES_EQUAL(distance(v1, v2), sqrt(56.0), oopse::epsilon);
247 +    
248 +    //test distanceSquare
249 +    CPPUNIT_ASSERT_DOUBLES_EQUAL(distanceSquare(one, two), 4.0, oopse::epsilon);    
250 +    CPPUNIT_ASSERT_DOUBLES_EQUAL(distanceSquare(v1, v2), 56, oopse::epsilon);
251 +
252   }

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines