21 #include "ns3/simulator.h"
24 #include "ns3/lte-rlc-header.h"
25 #include "ns3/lte-rlc-am.h"
39 :
TestSuite (
"lte-rlc-am-transmitter", SYSTEM)
76 Packet::EnablePrinting ();
81 txPdcp = CreateObject<LteTestPdcp> ();
84 txRlc = CreateObject<LteRlcAm> ();
89 txMac = CreateObject<LteTestMac> ();
142 Simulator::Stop (
Seconds (0.3));
144 Simulator::Destroy ();
185 Simulator::Stop (
Seconds (0.6));
187 Simulator::Destroy ();
222 Simulator::Stop (
Seconds (0.4));
224 Simulator::Destroy ();
301 Simulator::Destroy ();
Test 4.1.1.3 Test that concatenation functionality works properly.
virtual ~LteRlcAmTransmitterConcatenationTestCase()
LteRlcAmTransmitterConcatenationTestCase()
virtual void DoRun(void)
Implementation to actually run this TestCase.
Test 4.1.1.1 Test that SDU transmitted at PDCP corresponds to PDU received by MAC.
LteRlcAmTransmitterOneSduTestCase()
virtual ~LteRlcAmTransmitterOneSduTestCase()
virtual void DoRun(void)
Implementation to actually run this TestCase.
Test 4.1.1.4 Test checks functionality of Report Buffer Status by testing primitive parameters.
LteRlcAmTransmitterReportBufferStatusTestCase()
virtual ~LteRlcAmTransmitterReportBufferStatusTestCase()
virtual void DoRun(void)
Implementation to actually run this TestCase.
Test 4.1.1.2 Test the correct functionality of the Segmentation.
virtual ~LteRlcAmTransmitterSegmentationTestCase()
virtual void DoRun(void)
Implementation to actually run this TestCase.
LteRlcAmTransmitterSegmentationTestCase()
Test case used by LteRlcAmTransmitterOneSduTestCase to create topology and to implement functionaliti...
Ptr< LteTestPdcp > txPdcp
the transmit PDCP
virtual void DoRun(void)
Implementation to actually run this TestCase.
virtual ~LteRlcAmTransmitterTestCase()
void CheckDataReceived(Time time, std::string shouldReceived, std::string assertMsg)
Check data received function.
void DoCheckDataReceived(std::string shouldReceived, std::string assertMsg)
Check data received function.
Ptr< LteRlc > txRlc
the RLC
Ptr< LteTestMac > txMac
the MAC
LteRlcAmTransmitterTestCase()
TestSuite 4.1.1 RLC AM: Only transmitter functionality.
LteRlcAmTransmitterTestSuite()
TestSuite 4.1.1 RLC AM: Only transmitter.
void SetLteRlcSapUser(LteRlcSapUser *s)
void SetRnti(uint16_t rnti)
void SetLteMacSapProvider(LteMacSapProvider *s)
LteMacSapUser * GetLteMacSapUser()
void SetLcId(uint8_t lcId)
LteRlcSapProvider * GetLteRlcSapProvider()
void SendTxOpportunity(Time time, uint32_t bytes)
Send transmit opportunity function.
void SetLteMacSapUser(LteMacSapUser *s)
Set the MAC SAP user.
LteMacSapProvider * GetLteMacSapProvider(void)
Get the MAC SAP provider.
void SetRlcHeaderType(uint8_t rlcHeaderType)
Set RLC header type.
std::string GetDataReceived(void)
Get data received function.
LteRlcSapUser * GetLteRlcSapUser(void)
Get the RLC SAP user.
void SetLteRlcSapProvider(LteRlcSapProvider *s)
Set the RLC SAP provider.
void SendData(Time time, std::string dataToSend)
Send data function.
void AddTestCase(TestCase *testCase, TestDuration duration=QUICK)
Add an individual child TestCase to this test suite.
Simulation virtual time values and global simulation resolution.
#define NS_LOG_COMPONENT_DEFINE(name)
Define a Log component with a specific name.
#define NS_TEST_ASSERT_MSG_EQ(actual, limit, msg)
Test that an actual and expected (limit) value are equal and report and abort if not.
Time Seconds(double value)
Construct a Time in the indicated unit.
static LteRlcAmTransmitterTestSuite lteRlcAmTransmitterTestSuite
Every class exported by the ns3 library is enclosed in the ns3 namespace.