31class NrSystemTestSchedulerTdmaPfSuite :
public TestSuite
37 NrSystemTestSchedulerTdmaPfSuite();
40NrSystemTestSchedulerTdmaPfSuite::NrSystemTestSchedulerTdmaPfSuite()
41 : TestSuite(
"nr-system-test-schedulers-tdma-pf", Type::SYSTEM)
50 std::list<std::string> subdivision = {
53 std::list<std::string> scheds = {
"PF"};
54 std::list<TxMode> mode = {
DL,
UL, DL_UL};
55 std::list<uint32_t> uesPerBeamList = {1, 2, 4, 8};
56 std::map<uint32_t, Duration> durationForUesPerBeam = {
59 {4, Duration::EXTENSIVE},
60 {8, Duration::EXTENSIVE},
62 std::list<uint32_t> beams = {1, 2};
63 std::list<uint32_t> numerologies = {
68 for (
const auto& num : numerologies)
70 for (
const auto& subType : subdivision)
72 for (
const auto& sched : scheds)
74 for (
const auto& modeType : mode)
76 for (
const auto& uesPerBeam : uesPerBeamList)
78 for (
const auto& beam : beams)
81 std::stringstream schedName;
86 else if (modeType ==
UL)
94 ss <<
", Num " << num <<
", " << subType <<
" " << sched <<
", "
95 << uesPerBeam <<
" UE per beam, " << beam <<
" beam";
96 const bool isDl = modeType ==
DL || modeType == DL_UL;
97 const bool isUl = modeType ==
UL || modeType == DL_UL;
99 schedName <<
"ns3::NrMacScheduler" << subType << sched;
109 durationForUesPerBeam.at(uesPerBeam));
119static NrSystemTestSchedulerTdmaPfSuite mmwaveTestSuite;
Main class for testing a scheduler, system-wise.
This test case checks if the throughput obtained per UE is as expected for the specified scheduling l...