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

This simple test verifies the correctness of buffering for packets received under block ack. More...

+ Inheritance diagram for PacketBufferingCaseA:
+ Collaboration diagram for PacketBufferingCaseA:

Public Member Functions

 PacketBufferingCaseA ()
virtual ~PacketBufferingCaseA ()
- Public Member Functions inherited from ns3::TestCase
virtual ~TestCase ()
 Destructor. More...
std::string GetName (void) const

Private Member Functions

virtual void DoRun (void)
 Implementation to actually run this TestCase. More...

Private Attributes

std::list< uint16_t > m_expectedBuffer

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...
bool GetErrorStatus (void) const NS_DEPRECATED
TestCaseGetParent () const
bool IsStatusFailure (void) const
bool IsStatusSuccess (void) const
void SetDataDir (std::string directory)
void ReportTestFailure (std::string cond, std::string actual, std::string limit, std::string message, std::string file, int32_t line)
 Log the failure of this TestCase. More...
bool MustAssertOnFailure (void) const
bool MustContinueOnFailure (void) const
std::string CreateDataDirFilename (std::string filename)
std::string CreateTempDirFilename (std::string filename)

Detailed Description

This simple test verifies the correctness of buffering for packets received under block ack.

In order to completely understand this example is important to cite section 9.10.3 in IEEE802.11 standard:

"[...] The sequence number space is considered divided into two parts, one of which is “old” and one of which is “new” by means of a boundary created by adding half the sequence number range to the current start of receive window (modulo 2^12)."

Definition at line 61 of file block-ack-test-suite.cc.

Constructor & Destructor Documentation

PacketBufferingCaseA::PacketBufferingCaseA ( )

Definition at line 71 of file block-ack-test-suite.cc.

References m_expectedBuffer.

PacketBufferingCaseA::~PacketBufferingCaseA ( )

Definition at line 81 of file block-ack-test-suite.cc.

Member Function Documentation

void PacketBufferingCaseA::DoRun ( void  )

Implementation to actually run this TestCase.

Subclasses should override this method to conduct their tests.

Implements ns3::TestCase.

Definition at line 86 of file block-ack-test-suite.cc.

References m_expectedBuffer, NS_TEST_EXPECT_MSG_EQ, and ns3::QosUtilsMapSeqControlToUniqueInteger().

+ Here is the call graph for this function:

Member Data Documentation

std::list<uint16_t> PacketBufferingCaseA::m_expectedBuffer

Definition at line 68 of file block-ack-test-suite.cc.

Referenced by DoRun(), and PacketBufferingCaseA().

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