Public Member Functions | |
DcfManagerTest () | |
virtual bool | RunTests (void) |
void | NotifyAccessGranted (uint32_t i) |
void | NotifyInternalCollision (uint32_t i) |
void | NotifyCollision (uint32_t i) |
Private Types | |
typedef std::vector < DcfStateTest * > | DcfStates |
Private Member Functions | |
void | StartTest (uint64_t slotTime, uint64_t sifs, uint64_t eifsNoDifsNoSifs) |
void | AddDcfState (uint32_t aifsn) |
void | EndTest (void) |
void | ExpectInternalCollision (uint64_t time, uint32_t from, uint32_t nSlots) |
void | ExpectCollision (uint64_t time, uint32_t from, uint32_t nSlots) |
void | AddRxOkEvt (uint64_t at, uint64_t duration) |
void | AddRxErrorEvt (uint64_t at, uint64_t duration) |
void | AddNavReset (uint64_t at, uint64_t duration) |
void | AddNavStart (uint64_t at, uint64_t duration) |
void | AddAccessRequest (uint64_t at, uint64_t txTime, uint64_t expectedGrantTime, uint32_t from) |
void | DoAccessRequest (uint64_t txTime, uint64_t expectedGrantTime, DcfStateTest *state) |
Private Attributes | |
DcfManager * | m_dcfManager |
DcfStates | m_dcfStates |
bool | m_result |
Definition at line 40 of file dcf-manager-test.cc.
typedef std::vector<DcfStateTest *> ns3::DcfManagerTest::DcfStates [private] |
Definition at line 66 of file dcf-manager-test.cc.
ns3::DcfManagerTest::DcfManagerTest | ( | ) |
Definition at line 101 of file dcf-manager-test.cc.
void ns3::DcfManagerTest::AddAccessRequest | ( | uint64_t | at, | |
uint64_t | txTime, | |||
uint64_t | expectedGrantTime, | |||
uint32_t | from | |||
) | [private] |
Definition at line 245 of file dcf-manager-test.cc.
References DoAccessRequest(), m_dcfStates, ns3::MicroSeconds(), ns3::Now(), and ns3::Simulator::Schedule().
Referenced by RunTests().
void ns3::DcfManagerTest::AddDcfState | ( | uint32_t | aifsn | ) | [private] |
Definition at line 181 of file dcf-manager-test.cc.
References ns3::DcfManager::Add(), m_dcfManager, m_dcfStates, and ns3::DcfState::SetAifsn().
Referenced by RunTests().
void ns3::DcfManagerTest::AddNavReset | ( | uint64_t | at, | |
uint64_t | duration | |||
) | [private] |
Definition at line 231 of file dcf-manager-test.cc.
References m_dcfManager, ns3::MicroSeconds(), ns3::DcfManager::NotifyNavResetNow(), ns3::Now(), and ns3::Simulator::Schedule().
Referenced by RunTests().
void ns3::DcfManagerTest::AddNavStart | ( | uint64_t | at, | |
uint64_t | duration | |||
) | [private] |
Definition at line 238 of file dcf-manager-test.cc.
References m_dcfManager, ns3::MicroSeconds(), ns3::DcfManager::NotifyNavStartNow(), ns3::Now(), and ns3::Simulator::Schedule().
Referenced by RunTests().
void ns3::DcfManagerTest::AddRxErrorEvt | ( | uint64_t | at, | |
uint64_t | duration | |||
) | [private] |
Definition at line 221 of file dcf-manager-test.cc.
References m_dcfManager, ns3::MicroSeconds(), ns3::DcfManager::NotifyRxEndErrorNow(), ns3::DcfManager::NotifyRxStartNow(), ns3::Now(), and ns3::Simulator::Schedule().
Referenced by RunTests().
void ns3::DcfManagerTest::AddRxOkEvt | ( | uint64_t | at, | |
uint64_t | duration | |||
) | [private] |
Definition at line 212 of file dcf-manager-test.cc.
References m_dcfManager, ns3::MicroSeconds(), ns3::DcfManager::NotifyRxEndOkNow(), ns3::DcfManager::NotifyRxStartNow(), ns3::Now(), and ns3::Simulator::Schedule().
Referenced by RunTests().
void ns3::DcfManagerTest::DoAccessRequest | ( | uint64_t | txTime, | |
uint64_t | expectedGrantTime, | |||
DcfStateTest * | state | |||
) | [private] |
Definition at line 254 of file dcf-manager-test.cc.
References m_dcfManager, ns3::DcfStateTest::QueueTx(), and ns3::DcfManager::RequestAccess().
Referenced by AddAccessRequest().
void ns3::DcfManagerTest::EndTest | ( | void | ) | [private] |
Definition at line 190 of file dcf-manager-test.cc.
References ns3::Simulator::Destroy(), m_dcfManager, m_dcfStates, ns3::DcfStateTest::m_expectedCollision, ns3::DcfStateTest::m_expectedGrants, ns3::DcfStateTest::m_expectedInternalCollision, m_result, NS_TEST_ASSERT, and ns3::Simulator::Run().
Referenced by RunTests().
void ns3::DcfManagerTest::ExpectCollision | ( | uint64_t | time, | |
uint32_t | from, | |||
uint32_t | nSlots | |||
) | [private] |
Definition at line 162 of file dcf-manager-test.cc.
References ns3::DcfStateTest::ExpectedCollision::at, m_dcfStates, ns3::DcfStateTest::m_expectedCollision, and ns3::DcfStateTest::ExpectedCollision::nSlots.
Referenced by RunTests().
void ns3::DcfManagerTest::ExpectInternalCollision | ( | uint64_t | time, | |
uint32_t | from, | |||
uint32_t | nSlots | |||
) | [private] |
Definition at line 153 of file dcf-manager-test.cc.
References ns3::DcfStateTest::ExpectedCollision::at, m_dcfStates, ns3::DcfStateTest::m_expectedInternalCollision, and ns3::DcfStateTest::ExpectedCollision::nSlots.
Referenced by RunTests().
void ns3::DcfManagerTest::NotifyAccessGranted | ( | uint32_t | i | ) |
Definition at line 106 of file dcf-manager-test.cc.
References m_dcfManager, m_dcfStates, ns3::DcfStateTest::m_expectedGrants, m_result, ns3::MicroSeconds(), ns3::DcfManager::NotifyTxStartNow(), ns3::Simulator::Now(), NS_TEST_ASSERT, and NS_TEST_ASSERT_EQUAL.
Referenced by ns3::DcfStateTest::DoNotifyAccessGranted().
void ns3::DcfManagerTest::NotifyCollision | ( | uint32_t | i | ) |
Definition at line 136 of file dcf-manager-test.cc.
References ns3::DcfStateTest::ExpectedCollision::at, m_dcfStates, ns3::DcfStateTest::m_expectedCollision, m_result, ns3::MicroSeconds(), ns3::Simulator::Now(), NS_TEST_ASSERT, NS_TEST_ASSERT_EQUAL, ns3::DcfStateTest::ExpectedCollision::nSlots, and ns3::DcfState::StartBackoffNow().
Referenced by ns3::DcfStateTest::DoNotifyCollision().
void ns3::DcfManagerTest::NotifyInternalCollision | ( | uint32_t | i | ) |
Definition at line 121 of file dcf-manager-test.cc.
References ns3::DcfStateTest::ExpectedCollision::at, m_dcfStates, ns3::DcfStateTest::m_expectedInternalCollision, m_result, ns3::MicroSeconds(), ns3::Simulator::Now(), NS_TEST_ASSERT, NS_TEST_ASSERT_EQUAL, ns3::DcfStateTest::ExpectedCollision::nSlots, and ns3::DcfState::StartBackoffNow().
Referenced by ns3::DcfStateTest::DoNotifyInternalCollision().
bool ns3::DcfManagerTest::RunTests | ( | void | ) | [virtual] |
Implements ns3::Test.
Definition at line 264 of file dcf-manager-test.cc.
References AddAccessRequest(), AddDcfState(), AddNavReset(), AddNavStart(), AddRxErrorEvt(), AddRxOkEvt(), EndTest(), ExpectCollision(), ExpectInternalCollision(), m_result, and StartTest().
void ns3::DcfManagerTest::StartTest | ( | uint64_t | slotTime, | |
uint64_t | sifs, | |||
uint64_t | eifsNoDifsNoSifs | |||
) | [private] |
Definition at line 172 of file dcf-manager-test.cc.
References m_dcfManager, ns3::MicroSeconds(), ns3::DcfManager::SetEifsNoDifs(), ns3::DcfManager::SetSifs(), and ns3::DcfManager::SetSlot().
Referenced by RunTests().
DcfManager* ns3::DcfManagerTest::m_dcfManager [private] |
Definition at line 68 of file dcf-manager-test.cc.
Referenced by AddDcfState(), AddNavReset(), AddNavStart(), AddRxErrorEvt(), AddRxOkEvt(), DoAccessRequest(), EndTest(), NotifyAccessGranted(), and StartTest().
DcfStates ns3::DcfManagerTest::m_dcfStates [private] |
Definition at line 69 of file dcf-manager-test.cc.
Referenced by AddAccessRequest(), AddDcfState(), EndTest(), ExpectCollision(), ExpectInternalCollision(), NotifyAccessGranted(), NotifyCollision(), and NotifyInternalCollision().
bool ns3::DcfManagerTest::m_result [private] |
Definition at line 70 of file dcf-manager-test.cc.
Referenced by EndTest(), NotifyAccessGranted(), NotifyCollision(), NotifyInternalCollision(), and RunTests().