[Opal-commits] opal/src testsolid.cpp,1.9,1.10
Status: Inactive
Brought to you by:
tylerstreeter
From: Olex <ole...@us...> - 2005-12-12 06:13:33
|
Update of /cvsroot/opal/opal/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv19257/src Modified Files: testsolid.cpp Log Message: Rolled back incorrect changes in ODESimulator. Adjusted unit tests for this case. Index: testsolid.cpp =================================================================== RCS file: /cvsroot/opal/opal/src/testsolid.cpp,v retrieving revision 1.9 retrieving revision 1.10 diff -C2 -d -r1.9 -r1.10 *** testsolid.cpp 12 Dec 2005 00:35:13 -0000 1.9 --- testsolid.cpp 12 Dec 2005 06:13:25 -0000 1.10 *************** *** 251,338 **** } ! class TwoSolidFixture ! { ! public: ! TwoSolidFixture() ! { ! sim = createSimulator(); ! s0 = sim->createSolid(); ! s1 = sim->createSolid(); ! } ! ~TwoSolidFixture() ! { ! sim->destroy(); ! } ! Simulator * sim; ! Solid * s0; ! Solid * s1; ! }; ! class MockCollision : public CollisionEventHandler ! { ! public: ! MockCollision() ! { ! calls = 0; ! } ! void OPAL_CALL handleCollisionEvent( const CollisionEvent & e ) ! { ! ++calls; ! } ! int calls; ! }; ! QT_TEST( same_contact_group_no_collision ) ! { ! TwoSolidFixture f; ! { ! SphereShapeData data; ! data.radius = 1; ! data.contactGroup = 1; ! f.s0->addShape( data ); ! f.s1->addShape( data ); ! } ! MockCollision * c = new MockCollision( ); ! f.s0->setCollisionEventHandler( c ); ! f.s1->setCollisionEventHandler( c ); ! f.s0->setPosition( 0, 0, 0 ); ! f.s1->setPosition( 0, 0, 0 ); ! f.sim->setupContactGroups( 1, 1, false ); ! c->calls = 0; ! f.sim->simulate( 1 ); ! QT_CHECK_EQUAL( c->calls, 0 ); ! } ! QT_TEST( same_contact_group_with_collision ) ! { ! TwoSolidFixture f; ! { ! SphereShapeData data; ! data.radius = 1; ! data.contactGroup = 1; ! f.s0->addShape( data ); ! f.s1->addShape( data ); ! } ! MockCollision * c = new MockCollision( ); ! f.s0->setCollisionEventHandler( c ); ! f.s1->setCollisionEventHandler( c ); ! f.s0->setPosition( 0, 0, 0 ); ! f.s1->setPosition( 0, 0, 0 ); ! f.sim->setupContactGroups( 1, 1, true ); ! c->calls = 0; ! f.sim->simulate( 1 ); ! QT_CHECK_GREATER( c->calls, 0 ); ! } } --- 251,344 ---- } ! class TwoSolidFixture ! { ! public: ! TwoSolidFixture() ! { ! sim = createSimulator(); ! s0 = sim->createSolid(); ! s1 = sim->createSolid(); ! } ! ~TwoSolidFixture() ! { ! sim->destroy(); ! } ! Simulator * sim; ! Solid * s0; ! Solid * s1; ! }; ! class MockCollision : public CollisionEventHandler ! { ! public: ! MockCollision() ! { ! calls = 0; ! } ! void OPAL_CALL handleCollisionEvent( const CollisionEvent & e ) ! { ! ++calls; ! } ! int calls; ! }; ! QT_TEST( same_contact_group_no_collision_but_events ) ! { ! TwoSolidFixture f; ! { ! SphereShapeData data; ! data.radius = 1; ! data.contactGroup = 1; ! f.s0->addShape( data ); ! f.s1->addShape( data ); ! } ! MockCollision * c = new MockCollision( ); ! f.s0->setCollisionEventHandler( c ); ! f.s1->setCollisionEventHandler( c ); ! f.s0->setPosition( 0, 0, 0 ); ! f.s1->setPosition( 0, 0, 0 ); ! f.sim->setupContactGroups( 1, 1, false ); ! c->calls = 0; ! f.sim->simulate( 1 ); ! QT_CHECK_EQUAL( f.s0->getPosition(), Point3r( 0, 0, 0 ) ); ! QT_CHECK_EQUAL( f.s1->getPosition(), Point3r( 0, 0, 0 ) ); ! QT_CHECK_GREATER( c->calls, 0 ); ! } ! QT_TEST( same_contact_group_with_collision_and_events ) ! { ! TwoSolidFixture f; ! { ! SphereShapeData data; ! data.radius = 1; ! data.contactGroup = 1; ! f.s0->addShape( data ); ! f.s1->addShape( data ); ! } ! MockCollision * c = new MockCollision( ); ! f.s0->setCollisionEventHandler( c ); ! f.s1->setCollisionEventHandler( c ); ! f.s0->setPosition( 0, 0, 0 ); ! f.s1->setPosition( 0, 0, 0 ); ! f.sim->setupContactGroups( 1, 1, true ); ! c->calls = 0; ! f.sim->simulate( 1 ); ! ! QT_CHECK_NOT_EQUAL( f.s0->getPosition(), Point3r( 0, 0, 0 ) ); ! QT_CHECK_NOT_EQUAL( f.s1->getPosition(), Point3r( 0, 0, 0 ) ); ! ! QT_CHECK_GREATER( c->calls, 0 ); ! } } |