A Discrete-Event Network Simulator
API
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
HwmpSimplestRegressionTest Class Reference

Peering Management & HWM Protocol regression test Initiate scenario with 2 stations. More...

#include <hwmp-simplest-regression.h>

+ Inheritance diagram for HwmpSimplestRegressionTest:
+ Collaboration diagram for HwmpSimplestRegressionTest:

Public Member Functions

 HwmpSimplestRegressionTest ()
 
virtual ~HwmpSimplestRegressionTest ()
 
void CheckResults ()
 
virtual void DoRun ()
 Implementation to actually run this TestCase. More...
 
- Public Member Functions inherited from ns3::TestCase
virtual ~TestCase ()
 Destructor. More...
 

Private Member Functions

void CreateDevices ()
 
void CreateNodes ()
 
void InstallApplications ()
 
void ResetPosition ()
 

Private Attributes

Ipv4InterfaceContainer m_interfaces
 
NodeContainerm_nodes
 
Time m_time
 Simulation time. More...
 

Additional Inherited Members

- Public Types inherited from ns3::TestCase
enum  TestDuration { QUICK = 1, EXTENSIVE = 2, TAKES_FOREVER = 3 }
 How long the test takes to execute. More...
 
- Protected Member Functions inherited from ns3::TestCase
 TestCase (std::string name)
 
void AddTestCase (TestCase *testCase) NS_DEPRECATED
 Add an individual child TestCase case to this TestCase. More...
 
void AddTestCase (TestCase *testCase, enum TestDuration duration)
 Add an individual child TestCase to this test suite. More...
 
std::string CreateDataDirFilename (std::string filename)
 
std::string CreateTempDirFilename (std::string filename)
 
bool GetErrorStatus (void) const NS_DEPRECATED
 
std::string GetName (void) const
 
bool IsStatusFailure (void) const
 
bool IsStatusSuccess (void) const
 
bool MustAssertOnFailure (void) const
 
bool MustContinueOnFailure (void) const
 
void ReportTestFailure (std::string cond, std::string actual, std::string limit, std::string message, std::string file, int32_t line)
 
void SetDataDir (std::string directory)
 

Detailed Description

Peering Management & HWM Protocol regression test Initiate scenario with 2 stations.

Procedure of opening peer link is the following:

* <-----------|----------->   Broadcast frame
*             |----------->|  Unicast frame
*
*                                        !!! PMP routines:
* <-----------|----------->|             Beacon
*             |<-----------|             Peer Link Open frame 
*             |----------->|             Peer Link Open frame
*             |----------->|             Peer Link Confirm frame
*             |<-----------|             Peer Link Confirm frame
*             |............|             !!! Data started:
*             |<-----------|-----------> Arp Request
* <-----------|----------->|             Arp Request (fwd)
* <-----------|----------->|             PREQ
*             |<-----------|             PREP
*             |----------->|             ARP reply
*             |<-----------|             Data
*             |----------->|             Data
*             |............|             Some other beacons
*             |<-----------|             Data
*             |----------->|             Data
*             |............|             !!! Route expiration routines:
*             |<-----------|-----------> PREQ (route expired)
*             |----------->|             PREP
*             |<-----------|             Data
*             |----------->|             Data
*             |............|
* 

At 10 seconds stations become unreachable, so UDP client tries to close peer link due to TX-fail, and UDP-srver tries to close link due to beacon loss

Definition at line 68 of file hwmp-simplest-regression.h.

Constructor & Destructor Documentation

HwmpSimplestRegressionTest::HwmpSimplestRegressionTest ( )

Definition at line 45 of file hwmp-simplest-regression.cc.

HwmpSimplestRegressionTest::~HwmpSimplestRegressionTest ( )
virtual

Definition at line 51 of file hwmp-simplest-regression.cc.

References m_nodes.

Member Function Documentation

void HwmpSimplestRegressionTest::CheckResults ( )

Definition at line 147 of file hwmp-simplest-regression.cc.

References NS_PCAP_TEST_EXPECT_EQ, and PREFIX.

Referenced by DoRun().

+ Here is the caller graph for this function:

void HwmpSimplestRegressionTest::CreateNodes ( )
private

Definition at line 73 of file hwmp-simplest-regression.cc.

References ns3::NodeContainer::Create(), ns3::MobilityHelper::Install(), m_nodes, ResetPosition(), ns3::MobilityHelper::SetMobilityModel(), and ns3::MobilityHelper::SetPositionAllocator().

Referenced by DoRun().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void HwmpSimplestRegressionTest::DoRun ( )
virtual

Implementation to actually run this TestCase.

Subclasses should override this method to conduct their tests.

Implements ns3::TestCase.

Definition at line 56 of file hwmp-simplest-regression.cc.

References CheckResults(), CreateDevices(), CreateNodes(), InstallApplications(), m_nodes, and m_time.

+ Here is the call graph for this function:

void HwmpSimplestRegressionTest::InstallApplications ( )
private
void HwmpSimplestRegressionTest::ResetPosition ( )
private

Definition at line 90 of file hwmp-simplest-regression.cc.

References ns3::NodeContainer::Get(), ns3::Object::GetObject(), m_nodes, and ns3::MobilityModel::SetPosition().

Referenced by CreateNodes().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

Member Data Documentation

Ipv4InterfaceContainer HwmpSimplestRegressionTest::m_interfaces
private

Definition at line 82 of file hwmp-simplest-regression.h.

Referenced by CreateDevices(), and InstallApplications().

NodeContainer* HwmpSimplestRegressionTest::m_nodes
private
Internal: It is important to have pointers here

Definition at line 79 of file hwmp-simplest-regression.h.

Referenced by CreateDevices(), CreateNodes(), DoRun(), InstallApplications(), ResetPosition(), and ~HwmpSimplestRegressionTest().

Time HwmpSimplestRegressionTest::m_time
private

Simulation time.

Definition at line 81 of file hwmp-simplest-regression.h.

Referenced by DoRun(), and InstallApplications().


The documentation for this class was generated from the following files: