--- trunk/test/math/Vector3TestCase.cpp 2004/10/18 21:03:15 100 +++ trunk/test/math/Vector3TestCase.cpp 2004/10/19 04:21:07 102 @@ -5,6 +5,31 @@ void Vector3TestCase::setUp(){ void Vector3TestCase::setUp(){ + zero[0] = 0.0; + zero[1] = 0.0; + zero[2] = 0.0; + + one[0] = 1.0; + one[1] = 1.0; + one[2] = 1.0; + + two[0] = 2.0; + two[1] = 2.0; + two[2] = 2.0; + + v1[0] = 1.0; + v1[1] = 2.0; + v1[2] = 3.0; + + v2[0] = 4.0; + v2[1] = 1.0; + v2[2] = 2.0; + + v3[0] = 1.0; + v3[1] = 10.0; + v3[2] = -7.0; + + } void Vector3TestCase::tearDown(){ @@ -14,14 +39,61 @@ void Vector3TestCase::testArithmetic(){ } void Vector3TestCase::testArithmetic(){ + + } void Vector3TestCase::testOperators(){ + Vector3d tmp; + //test += + + //test + + CPPUNIT_ASSERT(one + one == two); + + //test -= + tmp = two; + tmp -= one; + CPPUNIT_ASSERT(tmp == one); + + //test - + CPPUNIT_ASSERT(two -one == one); + + //test *= + tmp = two; + tmp *= 0.5; + CPPUNIT_ASSERT(tmp == one); + + //test * + CPPUNIT_ASSERT(two * 0.5 == one); + CPPUNIT_ASSERT(0.5 * two == one); + + //test /= + tmp = two; + tmp *= 2.0; + CPPUNIT_ASSERT(tmp == one); + //test / + CPPUNIT_ASSERT( two /2 == one); + CPPUNIT_ASSERT( two /4 == one * 0.5); + } void Vector3TestCase::testAccessEntries(){ -} -void Vector3TestCase::testOtherTemplateFunctions(){ + CPPUNIT_ASSERT(v1.z() == 3.0); + CPPUNIT_ASSERT(v2.x() == 4.0); + CPPUNIT_ASSERT(v3.y() == 10.0); -} \ No newline at end of file + Vector3d tmp; + tmp.x() = 78.01; + tmp.y() = 21.0; + tmp.z() =133.12; + CPPUNIT_ASSERT(tmp[0] == 78.01 && tmp[1] == 21.0 && tmp[2] == 133.12); + +} + +void Vector3TestCase::testOtherTemplateFunctions(){ + //test cross + CPPUNIT_ASSERT(cross(v1, v2) == v3); + CPPUNIT_ASSERT(cross(one, two) == zero); + +}