Testing that UE throughput scales linearly with number of component carriers. More...
#include "lte-test-aggregation-throughput-scale.h"
Public Member Functions | |
LteAggregationThroughputScaleTestCase (std::string name) | |
Creates an instance of the carrier aggregation throughput scaling test case. More... | |
~LteAggregationThroughputScaleTestCase () override | |
Public Member Functions inherited from ns3::TestCase | |
TestCase (const TestCase &)=delete | |
virtual | ~TestCase () |
Destructor. More... | |
std::string | GetName () const |
TestCase & | operator= (const TestCase &)=delete |
Private Member Functions | |
void | DoRun () override |
Setup the simulation, run it, and verify the result. More... | |
double | GetThroughput (uint8_t numberOfComponentCarriers) |
Get throughput function. More... | |
Private Attributes | |
uint16_t | m_actualCellId |
Cell ID UE has attached to. More... | |
uint16_t | m_expectedCellId |
Cell ID UE is expected to attach to. 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) | |
Constructor. More... | |
void | AddTestCase (TestCase *testCase, TestDuration duration=QUICK) |
Add an individual child TestCase to this test suite. More... | |
TestCase * | GetParent () const |
Get the parent of this TestCase. More... | |
bool | IsStatusFailure () const |
Check if any tests failed. More... | |
bool | IsStatusSuccess () const |
Check if all tests passed. More... | |
void | SetDataDir (std::string directory) |
Set the data directory where reference trace files can be found. More... | |
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 () const |
Check if this run should assert on failure. More... | |
bool | MustContinueOnFailure () const |
Check if this run should continue on failure. More... | |
std::string | CreateDataDirFilename (std::string filename) |
Construct the full path to a file in the data directory. More... | |
std::string | CreateTempDirFilename (std::string filename) |
Construct the full path to a file in a temporary directory. More... | |
Testing that UE throughput scales linearly with number of component carriers.
Also attaches UE to last component carrier to make sure no code assumes that primary carrier is first.
Definition at line 46 of file lte-test-aggregation-throughput-scale.h.
LteAggregationThroughputScaleTestCase::LteAggregationThroughputScaleTestCase | ( | std::string | name | ) |
Creates an instance of the carrier aggregation throughput scaling test case.
name | name of this test |
Definition at line 63 of file lte-test-aggregation-throughput-scale.cc.
References ns3::TestCase::GetName(), and NS_LOG_FUNCTION.
|
override |
Definition at line 69 of file lte-test-aggregation-throughput-scale.cc.
References ns3::TestCase::GetName(), and NS_LOG_FUNCTION.
|
overrideprivatevirtual |
Setup the simulation, run it, and verify the result.
Implements ns3::TestCase.
Definition at line 158 of file lte-test-aggregation-throughput-scale.cc.
References GetThroughput(), m_actualCellId, m_expectedCellId, NS_TEST_ASSERT_MSG_EQ, NS_TEST_ASSERT_MSG_EQ_TOL, and throughput.
|
private |
Get throughput function.
numberOfComponentCarriers | Number of component carriers |
Definition at line 75 of file lte-test-aggregation-throughput-scale.cc.
References ns3::ApplicationContainer::Add(), brite-generic-example::client, ns3::Ipv4InterfaceContainer::GetAddress(), ns3::TestCase::GetName(), ns3::Ipv4StaticRoutingHelper::GetStaticRouting(), ns3::PacketSink::GetTotalRx(), ns3::FriisSpectrumPropagationLossModel::GetTypeId(), nsclick-simple-lan::internet, m_actualCellId, m_expectedCellId, third::mobility, NS_LOG_FUNCTION, port, ns3::Seconds(), ns3::ObjectBase::SetAttribute(), ns3::Ipv4AddressHelper::SetBase(), ns3::Config::SetDefault(), sink, and ns3::ApplicationContainer::Start().
Referenced by DoRun().
|
private |
Cell ID UE has attached to.
Definition at line 72 of file lte-test-aggregation-throughput-scale.h.
Referenced by DoRun(), and GetThroughput().
|
private |
Cell ID UE is expected to attach to.
Definition at line 71 of file lte-test-aggregation-throughput-scale.h.
Referenced by DoRun(), and GetThroughput().