Subclass of TestCase class adding the ability to test the serialization and deserialization of a Header object. More...
#include "header-serialization-test.h"
Public Member Functions | |
template<typename T , typename... Args> | |
void | TestHeaderSerialization (const T &hdr, Args &&... args) |
Serialize the given header in a buffer, then create a new header by deserializing from the buffer and serialize the new header into a new buffer. | |
Public Member Functions inherited from ns3::TestCase | |
TestCase (const TestCase &)=delete | |
virtual | ~TestCase () |
Destructor. | |
std::string | GetName () const |
TestCase & | operator= (const TestCase &)=delete |
Protected Member Functions | |
HeaderSerializationTestCase (std::string name) | |
Constructor. | |
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. | |
TestCase * | GetParent () 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. | |
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... | |
Static Public Attributes inherited from ns3::TestCase | |
static constexpr auto | QUICK = Duration::QUICK |
Deprecated test duration simple enums. | |
static constexpr auto | EXTENSIVE = Duration::EXTENSIVE |
static constexpr auto | TAKES_FOREVER = Duration::TAKES_FOREVER |
Subclass of TestCase class adding the ability to test the serialization and deserialization of a Header object.
Definition at line 23 of file header-serialization-test.h.
|
inlineprotected |
Constructor.
[in] | name | The name of the new TestCase created |
Definition at line 31 of file header-serialization-test.h.
void ns3::HeaderSerializationTestCase::TestHeaderSerialization | ( | const T & | hdr, |
Args &&... | args ) |
Serialize the given header in a buffer, then create a new header by deserializing from the buffer and serialize the new header into a new buffer.
Verify that the two buffers have the same size and the same content.
T | [deduced] Type of the given header |
Args | [deduced] Type of arguments to pass to the constructor of the header |
[in] | hdr | the header to test |
[in] | args | the arguments to construct the new header |
Definition at line 62 of file header-serialization-test.h.
References ns3::Buffer::AddAtStart(), ns3::Buffer::Begin(), ns3::Buffer::GetSize(), NS_TEST_ASSERT_MSG_EQ, NS_TEST_EXPECT_MSG_EQ, and ns3::Buffer::Iterator::ReadU8().
Referenced by BasicMultiLinkElementTest::DoRun(), EhtOperationElementTest::DoRun(), EmlOperatingModeNotificationTest::DoRun(), He6GhzBandCapabilitiesTest::DoRun(), HeOperationElementTest::DoRun(), ReducedNeighborReportTest::DoRun(), TidToLinkMappingElementTest::DoRun(), TimInformationElementTest::DoRun(), WifiEhtCapabilitiesIeTest::DoRun(), WifiIeFragmentationTest::DoRun(), and WifiMgtHeaderTest::DoRun().