time simple test case, Checks the basic operations on time More...
Public Member Functions | |
TimeSimpleTestCase () | |
constructor for TimeSimpleTestCase. More... | |
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 |
Runs the Simple Time test case. More... | |
void | DoSetup () override |
setup function for TimeSimpleTestCase. More... | |
void | DoTeardown () override |
Does the tear down for TimeSimpleTestCase. More... | |
virtual void | DoTimeOperations () |
Tests the Time Operations. More... | |
template<typename T > | |
void | TestDivision (Time t, Time expected, T val, const std::string &msg) |
Helper function to handle boilerplate code for division tests. More... | |
void | TestDivisionByDecimalTypes () |
Test dividing a Time instance by various decimal types. More... | |
void | TestDivisionByIntegerTypes () |
Test dividing a Time instance by various integer types. More... | |
template<typename T > | |
void | TestMultiplication (Time t, Time expected, T val, const std::string &msg) |
Helper function to handle boilerplate code for multiplication tests. More... | |
void | TestMultiplicationByDecimalTypes () |
Test multiplying a Time instance by various decimal types. More... | |
void | TestMultiplicationByIntegerTypes () |
Test multiplying a Time instance by various integer types. 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... | |
time simple test case, Checks the basic operations on time
Definition at line 39 of file time-test-suite.cc.
TimeSimpleTestCase::TimeSimpleTestCase | ( | ) |
constructor for TimeSimpleTestCase.
Definition at line 115 of file time-test-suite.cc.
|
overrideprivatevirtual |
Runs the Simple Time test case.
Implements ns3::TestCase.
Definition at line 160 of file time-test-suite.cc.
References ns3::Days(), DoTimeOperations(), ns3::FemtoSeconds(), ns3::Time::GetInteger(), ns3::Time::GetNanoSeconds(), ns3::Hours(), ns3::MicroSeconds(), ns3::MilliSeconds(), ns3::Minutes(), ns3::NanoSeconds(), NS_TEST_ASSERT_MSG_EQ, NS_TEST_ASSERT_MSG_EQ_TOL, ns3::PicoSeconds(), ns3::Seconds(), and ns3::Years().
|
overrideprivatevirtual |
setup function for TimeSimpleTestCase.
Reimplemented from ns3::TestCase.
Definition at line 121 of file time-test-suite.cc.
|
overrideprivatevirtual |
Does the tear down for TimeSimpleTestCase.
Reimplemented from ns3::TestCase.
Definition at line 214 of file time-test-suite.cc.
|
privatevirtual |
Tests the Time Operations.
Definition at line 126 of file time-test-suite.cc.
References ns3::Div(), NS_TEST_ASSERT_MSG_EQ, ns3::Rem(), TestDivisionByDecimalTypes(), TestDivisionByIntegerTypes(), TestMultiplicationByDecimalTypes(), and TestMultiplicationByIntegerTypes().
Referenced by DoRun().
|
private |
Helper function to handle boilerplate code for division tests.
T | type of division value |
t | Time value to divide |
expected | Expected result of the division |
val | Value to divide by |
msg | Error message to print if test fails |
Definition at line 290 of file time-test-suite.cc.
References NS_TEST_ASSERT_MSG_EQ.
Referenced by TestDivisionByDecimalTypes(), and TestDivisionByIntegerTypes().
|
private |
Test dividing a Time instance by various decimal types.
Definition at line 326 of file time-test-suite.cc.
References ns3::Seconds(), and TestDivision().
Referenced by DoTimeOperations().
|
private |
Test dividing a Time instance by various integer types.
Definition at line 298 of file time-test-suite.cc.
References ns3::Time::GetTimeStep(), ns3::Seconds(), and TestDivision().
Referenced by DoTimeOperations().
|
private |
Helper function to handle boilerplate code for multiplication tests.
T | type of multiplication value |
t | Time value to multiply |
expected | Expected result of the multiplication |
val | Value to multiply by |
msg | Error message to print if test fails |
Definition at line 220 of file time-test-suite.cc.
Referenced by TestMultiplicationByDecimalTypes(), and TestMultiplicationByIntegerTypes().
|
private |
Test multiplying a Time instance by various decimal types.
Definition at line 276 of file time-test-suite.cc.
References ns3::Time::GetDouble(), ns3::Seconds(), and TestMultiplication().
Referenced by DoTimeOperations().
|
private |
Test multiplying a Time instance by various integer types.
Definition at line 236 of file time-test-suite.cc.
References ns3::Time::GetTimeStep(), ns3::Seconds(), and TestMultiplication().
Referenced by DoTimeOperations().