A Discrete-Event Network Simulator
API
Loading...
Searching...
No Matches
ns3::TestSuite Class Reference

A suite of tests to run. More...

#include "test.h"

Inherits ns3::TestCase.

Inherited by AnglesTestSuite, AnimationInterfaceTestSuite, AodvRegressionTestSuite, AredQueueDiscTestSuite, Asn1EncodingSuite, AttributeContainerTestSuite, AttributesTestSuite, AverageTestSuite, BasicDataCalculatorsTestSuite, BasicEnergyHarvesterTestSuite, BitSerializerTestSuite, BlockAckTestSuite, BoxLineIntersectionTestSuite, BriteTestSuite, BufferTestSuite, BuildingPositionAllocatorTestSuite, BuildingsChannelConditionModelsTestSuite, BuildingsHelperTestSuite, BuildingsPathlossTestSuite, BuildingsPenetrationLossesTestSuite, BuildingsShadowingTestSuite, BulkSendTestSuite, CallbackTestSuite, CarrierAggregationConfigTestSuite, ChannelAccessManagerTestSuite, ChannelConditionModelsTestSuite, ClassicRecoveryTestSuite, ClickIfidFromNameTestSuite, CoDelQueueDiscTestSuite, CobaltQueueDiscTestSuite, CosineAntennaModelTestSuite, CsmaSystemTestSuite, DataRateTestSuite, DegreesRadiansTestSuite, DhcpTestSuite, Dot11sRegressionSuite, Dot11sTestSuite, DropTailQueueTestSuite, DsdvTestSuite, DsrTestSuite, EpcS1uDlTestSuite, EpcS1uUlTestSuite, EpcTftClassifierTestSuite, EpsGtpuTestSuite, ErrorModelTestSuite, FifoQueueDiscTestSuite, FlameRegressionSuite, FlameTestSuite, FqCoDelQueueDiscTestSuite, FqCobaltQueueDiscTestSuite, FqPieQueueDiscTestSuite, GeoToCartesianTestSuite, GlobalRouteManagerImplTestSuite, HistogramTestSuite, IPv4L3ProtocolTestSuite, IPv6L3ProtocolTestSuite, IcmpTestSuite, InterBssTestSuite, InternetStackHelperTestSuite, Ipv4AddressGeneratorTestSuite, Ipv4AddressHelperTestSuite, Ipv4DeduplicationPerformanceTestSuite, Ipv4DeduplicationTestSuite, Ipv4ForwardingTestSuite, Ipv4FragmentationTestSuite, Ipv4GlobalRoutingTestSuite, Ipv4HeaderTestSuite, Ipv4PacketInfoTagTestSuite, Ipv4RawTestSuite, Ipv4RipTestSuite, Ipv4StaticRoutingTestSuite, Ipv6AddressGeneratorTestSuite, Ipv6AddressHelperTestSuite, Ipv6AddressTestSuite, Ipv6DadTestSuite, Ipv6DualStackTestSuite, Ipv6ExtensionHeaderTestSuite, Ipv6ForwardingTestSuite, Ipv6FragmentationTestSuite, Ipv6PacketInfoTagTestSuite, Ipv6RawTestSuite, Ipv6RipngTestSuite, IsotropicAntennaModelTestSuite, Issue211TestSuite, ItuR1411LosPropagationLossModelTestSuite, ItuR1411NlosOverRooftopPropagationLossModelTestSuite, Kun2600MhzPropagationLossModelTestSuite, LenaTestCqaFfMacSchedulerSuite, LenaTestFdBetFfMacSchedulerSuite, LenaTestFdMtFfMacSchedulerSuite, LenaTestFdTbfqFfMacSchedulerSuite, LenaTestHarqSuite, LenaTestMimoSuite, LenaTestPfFfMacSchedulerSuite, LenaTestPhyErrorModelSuite, LenaTestPssFfMacSchedulerSuite, LenaTestRrFfMacSchedulerSuite, LenaTestTdBetFfMacSchedulerSuite, LenaTestTdMtFfMacSchedulerSuite, LenaTestTdTbfqFfMacSchedulerSuite, LenaTestTtaFfMacSchedulerSuite, LengthTestSuite, LiIonEnergySourceTestSuite, LolipopCounterTestSuite, LrWpanAckTestSuite, LrWpanCcaTestSuite, LrWpanCollisionTestSuite, LrWpanEdTestSuite, LrWpanErrorModelTestSuite, LrWpanIfsTestSuite, LrWpanMacTestSuite, LrWpanPacketTestSuite, LrWpanPlmeAndPdInterfaceTestSuite, LrWpanSlottedCsmacaTestSuite, LrWpanSpectrumValueHelperTestSuite, LteAggregationThroughputScaleTestSuite, LteAntennaTestSuite, LteCellSelectionTestSuite, LteCqiGenerationTestSuite, LteDownlinkPowerControlTestSuite, LteDownlinkSinrTestSuite, LteEarfcnTestSuite, LteEpcE2eDataTestSuite, LteFrequencyReuseTestSuite, LteHandoverDelayTestSuite, LteHandoverFailureTestSuite, LteHandoverTargetTestSuite, LteInterferenceFrTestSuite, LteInterferenceTestSuite, LteIpv6RoutingTestSuite, LteLinkAdaptationTestSuite, LtePathlossModelTestSuite, LtePrimaryCellChangeTestSuite, LteRadioLinkFailureTestSuite, LteRlcAmE2eTestSuite, LteRlcAmTransmitterTestSuite, LteRlcUmE2eTestSuite, LteRlcUmTransmitterTestSuite, LteRrcTestSuite, LteSecondaryCellHandoverTestSuite, LteSecondaryCellSelectionTestSuite, LteSpectrumValueHelperTestSuite, LteUeMeasurementsHandoverTestSuite, LteUeMeasurementsPiecewiseTestSuite1, LteUeMeasurementsPiecewiseTestSuite2, LteUeMeasurementsPiecewiseTestSuite3, LteUeMeasurementsTestSuite, LteUplinkPowerControlTestSuite, LteUplinkSinrTestSuite, LteX2HandoverMeasuresTestSuite, LteX2HandoverTestSuite, MeshTestSuite, MobilityTestSuite, MobilityTraceTestSuite, MpiTestSuite, NeighborCacheTestSuite, NixVectorRoutingTestSuite, Ns2MobilityHelperTestSuite, Ns3TcpCubicTestSuite, Ns3TcpLossTestSuite, Ns3TcpNoDelayTestSuite, Ns3TcpSocketTestSuite, Ns3TcpStateTestSuite, Ns3WimaxFragmentationTestSuite, Ns3WimaxMacMessagesTestSuite, Ns3WimaxPhyTestSuite, Ns3WimaxQoSTestSuite, Ns3WimaxSSMacTestSuite, Ns3WimaxServiceFlowTestSuite, Ns3WimaxTlvTestSuite, OkumuraHataPropagationLossModelTestSuite, OlsrProtocolTestSuite, OlsrTestSuite, OutdoorRandomWalkTestSuite, PacketMetadataTestSuite, PacketSocketAppsTestSuite, PacketTestSuite, PairValueTestSuite, ParabolicAntennaModelTestSuite, PbbTestSuite, PcapFileTestSuite, PfifoFastQueueDiscTestSuite, PieQueueDiscTestSuite, PingTestSuite, PointToPointTestSuite, PowerRateAdaptationTestSuite, PrioQueueDiscTestSuite, ProbabilisticV2vChCondModelsTestSuite, ProbeTestSuite, PropagationLossModelsTestSuite, PrrRecoveryTestSuite, QosTxopTestSuite, QueueDiscTracesTestSuite, RadvdTestSuite, RandCartAroundGeoTestSuite, RectangleClosestBorderTestSuite, RedQueueDiscTestSuite, RegressionTestSuite, RngTestSuite, RocketfuelTopologyReaderTestSuite, RttEstimatorTestSuite, SequenceNumberTestSuite, SimulatorTestSuite, SixlowpanFragmentationTestSuite, SixlowpanHc1TestSuite, SixlowpanIphcStatefulTestSuite, SixlowpanIphcTestSuite, SpectrumConverterTestSuite, SpectrumIdealPhyTestSuite, SpectrumInterferenceTestSuite, SpectrumValueTestSuite, SpectrumWifiPhyTestSuite, SteadyStateRandomWaypointTestSuite, SwitchTestSuite, TbfQueueDiscTestSuite, TcFlowControlTestSuite, TcpAdvertisedWindowTestSuite, TcpBicTestSuite, TcpBytesInFlightTestSuite, TcpDataSentCbTestSuite, TcpDctcpTestSuite, TcpEndpointBug2211TestSuite, TcpFastRetrTestSuite, TcpHeaderTestSuite, TcpHighSpeedTestSuite, TcpHtcpTestSuite, TcpHyblaTestSuite, TcpIllinoisTestSuite, TcpLedbatTestSuite, TcpLinuxRenoTestSuite, TcpLossTestSuite, TcpOptionTestSuite, TcpPacingTestSuite, TcpPktsAckedTestSuite, TcpRateOpsTestSuite, TcpRenoCongAvoidTestSuite, TcpRtoTestSuite, TcpRttEstimationTestSuite, TcpRxBufferTestSuite, TcpSackPermittedTestSuite, TcpScalableTestSuite, TcpSlowStartTestSuite, TcpSynConnectionFailedTestSuite, TcpTestSuite, TcpTimestampTestSuite, TcpTxBufferTestSuite, TcpVegasTestSuite, TcpVenoTestSuite, TcpWScalingTestSuite, TcpYeahTestSuite, TcpZeroWindowTestSuite, TestCarrierAggregationSuite, ThreadedSimulatorTestSuite, ThreeGppChannelTestSuite, ThreeGppHttpClientServerTestSuite, ThreeGppPropagationLossModelsTestSuite, ThreeGppV2vChCondModelsTestSuite, TimeTestSuite, TimerTestSuite, TracedCallbackTestSuite, TracedCallbackTypedefTestSuite, TracedValueCallbackTestSuite, TupleValueTestSuite, TvHelperDistributionTestSuite, TvSpectrumTransmitterTestSuite, TwoRaySplmTestSuite, TxDurationTestSuite, TxopTestSuite, TypeIdPerformanceSuite, TypeIdTestSuite, UanEnergyModelTestSuite, UanTestSuite, UdpClientServerTestSuite, UdpTestSuite, UniformPlanarArrayTestSuite, WaveformGeneratorTestSuite, WaypointMobilityModelTestSuite, WifiAcMappingTestSuite, WifiAggregationTestSuite, WifiChannelSwitchingTestSuite, WifiDynamicBwOpTestSuite, WifiEhtInfoElemsTestSuite, WifiEmlsrTestSuite, WifiErrorRateModelsTestSuite, WifiIeFragmentationTestSuite, WifiMacOfdmaTestSuite, WifiMacQueueTestSuite, WifiMsduAggregatorTestSuite, WifiMultiLinkOperationsTestSuite, WifiNonHtDuplicateTestSuite, WifiPhyCcaTestSuite, WifiPhyMuMimoTestSuite, WifiPhyOfdmaTestSuite, WifiPhyReceptionTestSuite, WifiPhyThresholdsTestSuite, WifiPrimaryChannelsTestSuite, WifiRuAllocationTestSuite, WifiTestSuite, WifiTransmitMaskTestSuite, WifiTxopTestSuite, ns3::ExampleAsTestSuite, ns3::Ipv4ListRoutingTestSuite, ns3::Ipv6ListRoutingTestSuite, ns3::LenaTestBearerDeactivateSuite, ns3::LteRlcHeaderTestSuite, ns3::TcpBbrTestSuite, ns3::TcpEcnTestSuite, ns3::TcpLpTestSuite, ns3::TcpTcpCloseTestSuite, ns3::aodv::AodvLoopbackTestSuite, ns3::aodv::AodvTestSuite, ns3::aodv::IdCacheTestSuite, ns3::int64x64::test::Int64x64TestSuite, ns3::test::RandomVariable::RandomVariableSuite, ns3::tests::BuildProfileTestSuite, ns3::tests::CommandLineTestSuite, ns3::tests::ConfigTestSuite, ns3::tests::EnvironmentVariableTestSuite, ns3::tests::EventGarbageCollectorTestSuite, ns3::tests::ExamplesAsTestsTestSuite, ns3::tests::GlobalValueTestSuite, ns3::tests::HashTestSuite, ns3::tests::ManyUniformRandomVariablesOneGetValueCallTestSuite, ns3::tests::MatrixArrayTestSuite, ns3::tests::NamesTestSuite, ns3::tests::ObjectTestSuite, ns3::tests::OneUniformRandomVariableManyGetValueCallsTestSuite, ns3::tests::PtrTestSuite, ns3::tests::SampleTestSuite, ns3::tests::SplitStringTestSuite, ns3::tests::TrickleTimerTestSuite, ns3::tests::TypeTraitsTestSuite, ns3::tests::ValArrayTestSuite, and ns3::tests::WatchdogTestSuite.

+ Collaboration diagram for ns3::TestSuite:

Public Types

enum class  Type {
  ALL = 0 , UNIT , SYSTEM , EXAMPLE ,
  PERFORMANCE
}
 Type of test. More...
 
- 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
 

Public Member Functions

 TestSuite (std::string name, Type type=Type::UNIT)
 Construct a new test suite.
 
TestSuite::Type GetTestType ()
 get the kind of test this test suite implements
 
- Public Member Functions inherited from ns3::TestCase
 TestCase (const TestCase &)=delete
 
virtual ~TestCase ()
 Destructor.
 
std::string GetName () const
 
TestCaseoperator= (const TestCase &)=delete
 

Static Public Attributes

static constexpr auto ALL = Type::ALL
 
static constexpr auto EXAMPLE = Type::EXAMPLE
 
static constexpr auto PERFORMANCE = Type::PERFORMANCE
 
static constexpr auto SYSTEM = Type::SYSTEM
 
static constexpr auto UNIT = Type::UNIT
 
- Static Public Attributes inherited from ns3::TestCase
static constexpr auto EXTENSIVE = Duration::EXTENSIVE
 
static constexpr auto QUICK = Duration::QUICK
 
static constexpr auto TAKES_FOREVER
 

Private Member Functions

void DoRun () override
 Implementation to actually run this TestCase.
 

Private Attributes

TestSuite::Type m_type
 Type of this TestSuite.
 

Additional Inherited Members

- 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

A suite of tests to run.

See also
sample-test-suite.cc

Definition at line 1267 of file test.h.

Member Enumeration Documentation

◆ Type

enum class ns3::TestSuite::Type
strong

Type of test.

Enumerator
ALL 
UNIT 

This test suite implements a Unit Test.

SYSTEM 

This test suite implements a System Test.

EXAMPLE 

This test suite implements an Example Test.

PERFORMANCE 

This test suite implements a Performance Test.

Definition at line 1274 of file test.h.

Constructor & Destructor Documentation

◆ TestSuite()

ns3::TestSuite::TestSuite ( std::string  name,
TestSuite::Type  type = Type::UNIT 
)

Construct a new test suite.

Parameters
[in]nameThe name of the test suite.
[in]typeThe TestType of the test suite (defaults to UNIT test).

Definition at line 496 of file test.cc.

References ns3::TestRunnerImpl::AddTestSuite(), ns3::Singleton< TestRunnerImpl >::Get(), and NS_LOG_FUNCTION.

+ Here is the call graph for this function:

Member Function Documentation

◆ DoRun()

void ns3::TestSuite::DoRun ( )
overrideprivatevirtual

Implementation to actually run this TestCase.

Subclasses should override this method to conduct their tests.

Implements ns3::TestCase.

Definition at line 512 of file test.cc.

References NS_LOG_FUNCTION.

◆ GetTestType()

TestSuite::Type ns3::TestSuite::GetTestType ( )

get the kind of test this test suite implements

Returns
The Type of the suite.

Definition at line 505 of file test.cc.

References m_type, and NS_LOG_FUNCTION.

Member Data Documentation

◆ ALL

constexpr auto ns3::TestSuite::ALL = Type::ALL
staticconstexpr
Deprecated:
See Type::ALL.

Definition at line 1284 of file test.h.

◆ EXAMPLE

constexpr auto ns3::TestSuite::EXAMPLE = Type::EXAMPLE
staticconstexpr
Deprecated:
See Type::EXAMPLE.

Definition at line 1290 of file test.h.

◆ m_type

TestSuite::Type ns3::TestSuite::m_type
private

Type of this TestSuite.

Definition at line 1313 of file test.h.

Referenced by GetTestType().

◆ PERFORMANCE

constexpr auto ns3::TestSuite::PERFORMANCE = Type::PERFORMANCE
staticconstexpr
Deprecated:
See Type::PERFORMANCE.

Definition at line 1292 of file test.h.

◆ SYSTEM

constexpr auto ns3::TestSuite::SYSTEM = Type::SYSTEM
staticconstexpr
Deprecated:
See Type::SYSTEM.

Definition at line 1288 of file test.h.

◆ UNIT

constexpr auto ns3::TestSuite::UNIT = Type::UNIT
staticconstexpr
Deprecated:
See Type::UNIT.

Definition at line 1286 of file test.h.


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