diff --git a/model/leo-circular-orbit-mobility-model.cc b/model/leo-circular-orbit-mobility-model.cc index 06da884..b8f0eb2 100644 --- a/model/leo-circular-orbit-mobility-model.cc +++ b/model/leo-circular-orbit-mobility-model.cc @@ -25,6 +25,7 @@ LeoCircularOrbitMobilityModel::GetTypeId () MakeDoubleAccessor (&LeoCircularOrbitMobilityModel::SetAltitude, &LeoCircularOrbitMobilityModel::GetAltitude), MakeDoubleChecker ()) + // TODO check value limits .AddAttribute ("Inclination", "The inclination of the orbital plane in degrees", DoubleValue (10.0), @@ -33,7 +34,7 @@ LeoCircularOrbitMobilityModel::GetTypeId () MakeDoubleChecker ()) .AddAttribute ("Latitude", "The latitude at which the orital plane intersects the equatorial plane in degrees", - DoubleValue (10.0), + DoubleValue (0.0), MakeDoubleAccessor (&LeoCircularOrbitMobilityModel::SetLatitude, &LeoCircularOrbitMobilityModel::GetLatitude), MakeDoubleChecker ()) diff --git a/test/leo-orbit-test-suite.cc b/test/leo-orbit-test-suite.cc index 4ac017e..e640aca 100644 --- a/test/leo-orbit-test-suite.cc +++ b/test/leo-orbit-test-suite.cc @@ -13,7 +13,6 @@ class LeoOrbitSpeedTestCase : public TestCase public: LeoOrbitSpeedTestCase () : TestCase ("Test speed for 0 altitude") {} virtual ~LeoOrbitSpeedTestCase () {} - private: virtual void DoRun (void) { @@ -24,11 +23,28 @@ private: } }; +class LeoOrbitPositionTestCase : public TestCase +{ +public: + LeoOrbitPositionTestCase () : TestCase ("Test position for 0 altitude and 0 inclination") {} + virtual ~LeoOrbitPositionTestCase () {} +private: + virtual void DoRun (void) + { + Ptr mob = CreateObject (); + mob->SetAttribute ("Altitude", DoubleValue (0.0)); + mob->SetAttribute ("Inclination", DoubleValue (1.0)); + + NS_TEST_ASSERT_MSG_EQ (mob->GetPosition ().GetLength(), LEO_EARTH_RAD_M, "Unexpected position on earths surface for 1 deg inclination"); + } +}; + class LeoOrbitTestSuite : TestSuite { public: LeoOrbitTestSuite() : TestSuite ("leo-orbit", UNIT) { AddTestCase (new LeoOrbitSpeedTestCase, TestCase::QUICK); + AddTestCase (new LeoOrbitPositionTestCase, TestCase::QUICK); } };