This test checks that the sequence number is sent and received in sequence despite the sending application having to pause and restart its sending due to a temporarily full transmit buffer. More...
Public Member Functions | |
| BulkSendSeqTsSizeTestCase () | |
| ~BulkSendSeqTsSizeTestCase () override | |
| Public Member Functions inherited from ns3::TestCase | |
| TestCase (const TestCase &)=delete | |
| virtual | ~TestCase () | 
| Destructor.   | |
| std::string | GetName () const | 
| TestCase & | operator= (const TestCase &)=delete | 
Private Member Functions | |
| void | DoRun () override | 
| Implementation to actually run this TestCase.   | |
| void | ReceiveRx (Ptr< const Packet > p, const Address &from, const Address &to, const SeqTsSizeHeader &header) | 
| Record a packet successfully received.   | |
| void | SendTx (Ptr< const Packet > p, const Address &from, const Address &to, const SeqTsSizeHeader &header) | 
| Record a packet successfully sent.   | |
Private Attributes | |
| Time | m_lastRxTs {Seconds(0)} | 
| Last recorded timestamp on Rx.   | |
| Time | m_lastTxTs {Seconds(0)} | 
| Last recorded timestamp on Tx.   | |
| uint64_t | m_received {0} | 
| number of bytes received   | |
| uint64_t | m_sent {0} | 
| number of bytes sent   | |
| uint64_t | m_seqRxCounter {0} | 
| Counter for Sequences on Rx.   | |
| uint64_t | m_seqTxCounter {0} | 
| Counter for Sequences on Tx.   | |
Additional Inherited Members | |
| Public Types inherited from ns3::TestCase | |
| enum class | Duration { 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) | |
| Constructor.   | |
| void | AddTestCase (TestCase *testCase, Duration duration=Duration::QUICK) | 
| Add an individual child TestCase to this test suite.   | |
| TestCase * | GetParent () const | 
| Get the parent of this TestCase.   | |
| bool | IsStatusFailure () const | 
| Check if any tests failed.   | |
| bool | IsStatusSuccess () const | 
| Check if all tests passed.   | |
| void | SetDataDir (std::string directory) | 
| Set the data directory where reference trace files can be found.   | |
| 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.   | |
| bool | MustAssertOnFailure () const | 
| Check if this run should assert on failure.   | |
| bool | MustContinueOnFailure () const | 
| Check if this run should continue on failure.   | |
| std::string | CreateDataDirFilename (std::string filename) | 
| Construct the full path to a file in the data directory.   | |
| std::string | CreateTempDirFilename (std::string filename) | 
| Construct the full path to a file in a temporary directory.   | |
This test checks that the sequence number is sent and received in sequence despite the sending application having to pause and restart its sending due to a temporarily full transmit buffer.
Definition at line 131 of file bulk-send-application-test-suite.cc.
| BulkSendSeqTsSizeTestCase::BulkSendSeqTsSizeTestCase | ( | ) | 
Definition at line 169 of file bulk-send-application-test-suite.cc.
References ns3::TestCase::TestCase().
      
  | 
  override | 
Definition at line 174 of file bulk-send-application-test-suite.cc.
      
  | 
  overrideprivatevirtual | 
Implementation to actually run this TestCase.
Subclasses should override this method to conduct their tests.
Implements ns3::TestCase.
Definition at line 207 of file bulk-send-application-test-suite.cc.
References ns3::CreateObject(), ns3::Simulator::Destroy(), ns3::DynamicCast(), ns3::ApplicationContainer::Get(), ns3::Ipv4InterfaceContainer::GetAddress(), ns3::Ipv4Address::GetAny(), ns3::ApplicationHelper::Install(), ns3::SimpleNetDeviceHelper::Install(), m_received, m_sent, ns3::MakeCallback(), nodes, NS_TEST_ASSERT_MSG_EQ, port, ReceiveRx(), ns3::Simulator::Run(), ns3::Seconds(), SendTx(), ns3::ApplicationHelper::SetAttribute(), ns3::SimpleNetDeviceHelper::SetChannelAttribute(), ns3::SimpleNetDeviceHelper::SetDeviceAttribute(), sink, ns3::ApplicationContainer::Start(), and ns3::ApplicationContainer::Stop().
      
  | 
  private | 
Record a packet successfully received.
| p | the packet | 
| from | source address | 
| to | destination address | 
| header | the SeqTsSizeHeader | 
Definition at line 193 of file bulk-send-application-test-suite.cc.
References ns3::SeqTsHeader::GetSeq(), ns3::SeqTsSizeHeader::GetSerializedSize(), ns3::SeqTsHeader::GetTs(), m_lastRxTs, m_received, m_seqRxCounter, NS_TEST_ASSERT_MSG_EQ, and NS_TEST_ASSERT_MSG_GT_OR_EQ.
Referenced by DoRun().
      
  | 
  private | 
Record a packet successfully sent.
| p | the packet | 
| from | source address | 
| to | destination address | 
| header | the SeqTsSizeHeader | 
Definition at line 179 of file bulk-send-application-test-suite.cc.
References ns3::SeqTsHeader::GetSeq(), ns3::SeqTsSizeHeader::GetSerializedSize(), ns3::SeqTsHeader::GetTs(), m_lastTxTs, m_sent, m_seqTxCounter, NS_TEST_ASSERT_MSG_EQ, and NS_TEST_ASSERT_MSG_GT_OR_EQ.
Referenced by DoRun().
Last recorded timestamp on Rx.
Definition at line 166 of file bulk-send-application-test-suite.cc.
Referenced by ReceiveRx().
Last recorded timestamp on Tx.
Definition at line 165 of file bulk-send-application-test-suite.cc.
Referenced by SendTx().
      
  | 
  private | 
number of bytes received
Definition at line 162 of file bulk-send-application-test-suite.cc.
Referenced by DoRun(), and ReceiveRx().
      
  | 
  private | 
number of bytes sent
Definition at line 161 of file bulk-send-application-test-suite.cc.
      
  | 
  private | 
Counter for Sequences on Rx.
Definition at line 164 of file bulk-send-application-test-suite.cc.
Referenced by ReceiveRx().
      
  | 
  private | 
Counter for Sequences on Tx.
Definition at line 163 of file bulk-send-application-test-suite.cc.
Referenced by SendTx().