A Discrete-Event Network Simulator
API
Loading...
Searching...
No Matches
SpectrumInterferenceTestCase Class Reference

Spectrum Interference Test. More...

+ Inheritance diagram for SpectrumInterferenceTestCase:
+ Collaboration diagram for SpectrumInterferenceTestCase:

Public Member Functions

 SpectrumInterferenceTestCase (Ptr< SpectrumValue > s, uint32_t txBytes, bool rxCorrect, std::string name)
 Constructor.
 
 ~SpectrumInterferenceTestCase () override
 
void DoRun () override
 Implementation to actually run this TestCase.
 
void RetrieveTestResult (SpectrumInterference *si)
 Retrieve the test results.
 
- Public Member Functions inherited from ns3::TestCase
 TestCase (const TestCase &)=delete
 
virtual ~TestCase ()
 Destructor.
 
std::string GetName () const
 
TestCaseoperator= (const TestCase &)=delete
 

Private Attributes

Ptr< const SpectrumModelm_mySpectrumModel
 Spectrum model pointer.
 
bool m_rxCorrectKnownOutcome
 expected Rx bytes
 
Ptr< SpectrumValuem_s
 Spectrum value.
 
uint32_t m_txBytes
 number of bytes to transmit
 

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...
 
using instead = Duration
 
- Static Public Attributes inherited from ns3::TestCase
static constexpr auto EXTENSIVE = Duration::EXTENSIVE
 
static constexpr auto QUICK = Duration::QUICK
 
static constexpr auto TAKES_FOREVER
 
- 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.
 
TestCaseGetParent () 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.
 

Detailed Description

Spectrum Interference Test.

Definition at line 40 of file spectrum-interference-test.cc.

Constructor & Destructor Documentation

◆ SpectrumInterferenceTestCase()

SpectrumInterferenceTestCase::SpectrumInterferenceTestCase ( Ptr< SpectrumValue s,
uint32_t  txBytes,
bool  rxCorrect,
std::string  name 
)

Constructor.

Parameters
sSpectrum value
txBytesnumber of bytes to transmit
rxCorrectexpected Rx bytes
nametest name

Definition at line 69 of file spectrum-interference-test.cc.

◆ ~SpectrumInterferenceTestCase()

SpectrumInterferenceTestCase::~SpectrumInterferenceTestCase ( )
override

Definition at line 81 of file spectrum-interference-test.cc.

Member Function Documentation

◆ DoRun()

void SpectrumInterferenceTestCase::DoRun ( )
overridevirtual

Implementation to actually run this TestCase.

Subclasses should override this method to conduct their tests.

Implements ns3::TestCase.

Definition at line 86 of file spectrum-interference-test.cc.

References ns3::SpectrumInterference::AddSignal(), ns3::Simulator::Destroy(), m_mySpectrumModel, m_s, m_txBytes, RetrieveTestResult(), ns3::Simulator::Run(), ns3::Simulator::Schedule(), ns3::Seconds(), ns3::SpectrumInterference::SetErrorModel(), ns3::SpectrumInterference::SetNoisePowerSpectralDensity(), and ns3::SpectrumInterference::StartRx().

+ Here is the call graph for this function:

◆ RetrieveTestResult()

void SpectrumInterferenceTestCase::RetrieveTestResult ( SpectrumInterference si)

Retrieve the test results.

Parameters
siSpectrumInterference instance

Definition at line 138 of file spectrum-interference-test.cc.

References ns3::SpectrumInterference::EndRx(), m_rxCorrectKnownOutcome, and NS_TEST_ASSERT_MSG_EQ.

Referenced by DoRun().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

Member Data Documentation

◆ m_mySpectrumModel

Ptr<const SpectrumModel> SpectrumInterferenceTestCase::m_mySpectrumModel
private

Spectrum model pointer.

Definition at line 66 of file spectrum-interference-test.cc.

Referenced by DoRun().

◆ m_rxCorrectKnownOutcome

bool SpectrumInterferenceTestCase::m_rxCorrectKnownOutcome
private

expected Rx bytes

Definition at line 65 of file spectrum-interference-test.cc.

Referenced by RetrieveTestResult().

◆ m_s

Ptr<SpectrumValue> SpectrumInterferenceTestCase::m_s
private

Spectrum value.

Definition at line 63 of file spectrum-interference-test.cc.

Referenced by DoRun().

◆ m_txBytes

uint32_t SpectrumInterferenceTestCase::m_txBytes
private

number of bytes to transmit

Definition at line 64 of file spectrum-interference-test.cc.

Referenced by DoRun().


The documentation for this class was generated from the following file: