--- a/src/mobility/test/ns2-mobility-helper-test-suite.cc Fri Jun 17 12:44:00 2011 +0200 +++ a/src/mobility/test/ns2-mobility-helper-test-suite.cc Fri Jun 17 15:03:42 2011 +0200 @@ -201,6 +201,19 @@ NS_TEST_EXPECT_MSG_EQ (pos, ref.pos, "Position mismatch at time " << time.GetSeconds () << " s for node " << id); NS_TEST_EXPECT_MSG_EQ (vel, ref.vel, "Velocity mismatch at time " << time.GetSeconds () << " s for node " << id); } + + void DoSetup () + { + CreateNodes (); + } + + void DoTeardown () + { + Names::Clear (); + std::remove (m_traceFile.c_str ()); + Simulator::Destroy (); + } + /// Go void DoRun () { @@ -211,7 +224,6 @@ { return; } - CreateNodes (); Ns2MobilityHelper mobility (m_traceFile); mobility.Install (); if (CheckInitialPositions ()) @@ -222,9 +234,6 @@ MakeCallback (&Ns2MobilityHelperTest::CourseChange, this)); Simulator::Stop (m_timeLimit); Simulator::Run (); - Names::Clear (); - std::remove (m_traceFile.c_str ()); - Simulator::Destroy (); } }; --- a/src/mobility/test/steady-state-random-waypoint-mobility-model-test.cc Fri Jun 17 12:44:00 2011 +0200 +++ a/src/mobility/test/steady-state-random-waypoint-mobility-model-test.cc Fri Jun 17 15:03:42 2011 +0200 @@ -39,10 +39,17 @@ double count; private: virtual void DoRun (void); + virtual void DoTeardown (void); void DistribCompare (); }; void +SteadyStateRandomWaypointTest::DoTeardown (void) +{ + mobilityStack.clear(); +} + +void SteadyStateRandomWaypointTest::DoRun (void) { SeedManager::SetSeed (123); --- a/src/mobility/test/waypoint-mobility-model-test.cc Fri Jun 17 12:44:00 2011 +0200 +++ a/src/mobility/test/waypoint-mobility-model-test.cc Fri Jun 17 15:03:42 2011 +0200 @@ -47,9 +47,18 @@ bool lazyNotify; private: virtual void DoRun (void); + virtual void DoTeardown (void); void ForceUpdates (void); void CourseChangeCallback (std::string path, Ptr model); }; + +void +WaypointMobilityModelNotifyTest::DoTeardown (void) +{ + mobilityStack.clear(); + waypoints.clear(); +} + void WaypointMobilityModelNotifyTest::DoRun (void) {