A Discrete-Event Network Simulator
API
ns3::TestSuite Class Reference

A suite of tests to run. More...

#include "test.h"

Inherits ns3::TestCase.

Inherited by AnglesTestSuite, AnimationInterfaceTestSuite, AodvRegressionTestSuite, AredQueueDiscTestSuite, Asn1EncodingSuite, AttributesTestSuite, AverageTestSuite, BasicDataCalculatorsTestSuite, BasicEnergyHarvesterTestSuite, BlockAckTestSuite, BriteTestSuite, BufferTestSuite, BuildingPositionAllocatorTestSuite, BuildingsHelperTestSuite, BuildingsPathlossTestSuite, BuildingsShadowingTestSuite, CallbackTestSuite, CarrierAggregationConfigTestSuite, ClassicRecoveryTestSuite, CobaltQueueDiscTestSuite, CoDelQueueDiscTestSuite, CosineAntennaModelTestSuite, CsmaSystemTestSuite, DcfTestSuite, DegreesRadiansTestSuite, DhcpTestSuite, Dot11sRegressionSuite, Dot11sTestSuite, DropTailQueueTestSuite, DsdvTestSuite, DsrTestSuite, EpcS1uDlTestSuite, EpcS1uUlTestSuite, EpcTftClassifierTestSuite, EpsGtpuTestSuite, ErrorModelTestSuite, FifoQueueDiscTestSuite, FlameRegressionSuite, FlameTestSuite, FqCoDelQueueDiscTestSuite, GeoToCartesianTestSuite, GlobalRouteManagerImplTestSuite, HistogramTestSuite, IcmpTestSuite, InterBssTestSuite, Ipv4AddressGeneratorTestSuite, Ipv4AddressHelperTestSuite, Ipv4DeduplicationTestSuite, Ipv4ForwardingTestSuite, Ipv4FragmentationTestSuite, Ipv4GlobalRoutingTestSuite, Ipv4HeaderTestSuite, IPv4L3ProtocolTestSuite, Ipv4ListRoutingTestSuite, Ipv4PacketInfoTagTestSuite, Ipv4RawTestSuite, Ipv4RipTestSuite, Ipv4StaticRoutingTestSuite, Ipv6AddressGeneratorTestSuite, Ipv6AddressHelperTestSuite, Ipv6AddressTestSuite, Ipv6DualStackTestSuite, Ipv6ExtensionHeaderTestSuite, Ipv6ForwardingTestSuite, Ipv6FragmentationTestSuite, IPv6L3ProtocolTestSuite, Ipv6ListRoutingTestSuite, Ipv6PacketInfoTagTestSuite, Ipv6RawTestSuite, Ipv6RipngTestSuite, IsotropicAntennaModelTestSuite, ItuR1411LosPropagationLossModelTestSuite, ItuR1411NlosOverRooftopPropagationLossModelTestSuite, Kun2600MhzPropagationLossModelTestSuite, LenaTestCqaFfMacSchedulerSuite, LenaTestFdBetFfMacSchedulerSuite, LenaTestFdMtFfMacSchedulerSuite, LenaTestFdTbfqFfMacSchedulerSuite, LenaTestHarqSuite, LenaTestMimoSuite, LenaTestPfFfMacSchedulerSuite, LenaTestPhyErrorModelSuite, LenaTestPssFfMacSchedulerSuite, LenaTestRrFfMacSchedulerSuite, LenaTestTdBetFfMacSchedulerSuite, LenaTestTdMtFfMacSchedulerSuite, LenaTestTdTbfqFfMacSchedulerSuite, LenaTestTtaFfMacSchedulerSuite, LiIonEnergySourceTestSuite, LrWpanAckTestSuite, LrWpanCcaTestSuite, LrWpanCollisionTestSuite, LrWpanEdTestSuite, LrWpanErrorModelTestSuite, LrWpanPacketTestSuite, LrWpanPlmeAndPdInterfaceTestSuite, LrWpanSpectrumValueHelperTestSuite, LteAggregationThroughputScaleTestSuite, LteAntennaTestSuite, LteCellSelectionTestSuite, LteCqiGenerationTestSuite, LteDownlinkPowerControlTestSuite, LteDownlinkSinrTestSuite, LteEarfcnTestSuite, LteEpcE2eDataTestSuite, LteFrequencyReuseTestSuite, LteHandoverDelayTestSuite, LteHandoverTargetTestSuite, LteInterferenceFrTestSuite, LteInterferenceTestSuite, LteIpv6RoutingTestSuite, LteLinkAdaptationTestSuite, LtePathlossModelTestSuite, LteRadioLinkFailureTestSuite, LteRlcAmE2eTestSuite, LteRlcAmTransmitterTestSuite, LteRlcUmE2eTestSuite, LteRlcUmTransmitterTestSuite, LteRrcTestSuite, LteSecondaryCellSelectionTestSuite, LteSpectrumValueHelperTestSuite, LteUeMeasurementsHandoverTestSuite, LteUeMeasurementsPiecewiseTestSuite1, LteUeMeasurementsPiecewiseTestSuite2, LteUeMeasurementsTestSuite, LteUplinkPowerControlTestSuite, LteUplinkSinrTestSuite, LteX2HandoverMeasuresTestSuite, LteX2HandoverTestSuite, MeshTestSuite, MobilityTestSuite, MobilityTraceTestSuite, Ns2MobilityHelperTestSuite, ns3::aodv::AodvLoopbackTestSuite, ns3::aodv::AodvTestSuite, ns3::aodv::IdCacheTestSuite, ns3::int64x64::test::Int64x64TestSuite, ns3::LenaTestBearerDeactivateSuite, ns3::LteRlcHeaderTestSuite, ns3::TcpEcnTestSuite, ns3::TcpLpTestSuite, ns3::TcpTcpCloseTestSuite, ns3::tests::BuildProfileTestSuite, ns3::tests::CommandLineTestSuite, ns3::tests::ConfigTestSuite, ns3::tests::EventGarbageCollectorTestSuite, ns3::tests::GlobalValueTestSuite, ns3::tests::HashTestSuite, ns3::tests::ManyUniformRandomVariablesOneGetValueCallTestSuite, ns3::tests::NamesTestSuite, ns3::tests::ObjectTestSuite, ns3::tests::OneUniformRandomVariableManyGetValueCallsTestSuite, ns3::tests::PtrTestSuite, ns3::tests::SampleTestSuite, ns3::tests::TypeTraitsTestSuite, ns3::tests::WatchdogTestSuite, Ns3TcpCwndTestSuite, Ns3TcpInteroperabilityTestSuite, Ns3TcpLossTestSuite, Ns3TcpNoDelayTestSuite, Ns3TcpSocketTestSuite, Ns3TcpStateTestSuite, Ns3WimaxFragmentationTestSuite, Ns3WimaxMacMessagesTestSuite, Ns3WimaxPhyTestSuite, Ns3WimaxQoSTestSuite, Ns3WimaxServiceFlowTestSuite, Ns3WimaxSSMacTestSuite, Ns3WimaxTlvTestSuite, NscTcpLossTestSuite, OcbTestSuite, OkumuraHataPropagationLossModelTestSuite, OlsrProtocolTestSuite, OlsrTestSuite, PacketMetadataTestSuite, PacketSocketAppsTestSuite, PacketTestSuite, ParabolicAntennaModelTestSuite, PbbTestSuite, PcapFileTestSuite, PfifoFastQueueDiscTestSuite, PieQueueDiscTestSuite, PointToPointTestSuite, PowerRateAdaptationTestSuite, PrioQueueDiscTestSuite, ProbeTestSuite, PropagationLossModelsTestSuite, PrrRecoveryTestSuite, QueueDiscTracesTestSuite, RandCartAroundGeoTestSuite, RandomVariableStreamTestSuite, RedQueueDiscTestSuite, RegressionTestSuite, RngTestSuite, RocketfuelTopologyReaderTestSuite, RttEstimatorTestSuite, SequenceNumberTestSuite, SimulatorTestSuite, SixlowpanFragmentationTestSuite, SixlowpanHc1TestSuite, SixlowpanIphcTestSuite, SpectrumConverterTestSuite, SpectrumIdealPhyTestSuite, SpectrumInterferenceTestSuite, SpectrumValueTestSuite, SpectrumWifiPhyTestSuite, SteadyStateRandomWaypointTestSuite, SwitchTestSuite, TbfQueueDiscTestSuite, TcFlowControlTestSuite, TcpAdvertisedWindowTestSuite, TcpBicTestSuite, TcpBytesInFlightTestSuite, TcpDataSentCbTestSuite, TcpEndpointBug2211TestSuite, TcpFastRetrTestSuite, TcpHeaderTestSuite, TcpHighSpeedTestSuite, TcpHtcpTestSuite, TcpHyblaTestSuite, TcpIllinoisTestSuite, TcpLedbatTestSuite, TcpOptionTestSuite, TcpPktsAckedTestSuite, TcpRateOpsTestSuite, TcpRenoCongAvoidTestSuite, TcpRtoTestSuite, TcpRttEstimationTestSuite, TcpRxBufferTestSuite, TcpSackPermittedTestSuite, TcpScalableTestSuite, TcpSlowStartTestSuite, TcpTestSuite, TcpTimestampTestSuite, TcpTxBufferTestSuite, TcpVegasTestSuite, TcpVenoTestSuite, TcpWScalingTestSuite, TcpYeahTestSuite, TcpZeroWindowTestSuite, TestCarrierAggregationSuite, ThreadedSimulatorTestSuite, ThreeGppHttpClientServerTestSuite, TimerTestSuite, TimeTestSuite, TracedCallbackTestSuite, TracedCallbackTypedefTestSuite, TracedValueCallbackTestSuite, TvHelperDistributionTestSuite, TvSpectrumTransmitterTestSuite, TxDurationTestSuite, TypeIdPerformanceSuite, TypeIdTestSuite, UanEnergyModelTestSuite, UanTestSuite, UdpClientServerTestSuite, UdpTestSuite, WaveformGeneratorTestSuite, WaveMacTestSuite, WaypointMobilityModelTestSuite, WifiAcMappingTestSuite, WifiAggregationTestSuite, WifiErrorRateModelsTestSuite, WifiInterferenceTestSuite, WifiMsduAggregatorTestSuite, WifiPhyReceptionTestSuite, WifiPhyThresholdsTestSuite, WifiTestSuite, and WifiTransmitMaskTestSuite.

+ Collaboration diagram for ns3::TestSuite:

Public Types

enum  Type {
  ALL = 0, BVT = 1, UNIT, SYSTEM,
  EXAMPLE, PERFORMANCE
}
 Type of test. More...
 
- Public Types inherited from ns3::TestCase
enum  TestDuration { QUICK = 1, EXTENSIVE = 2, TAKES_FOREVER = 3 }
 How long the test takes to execute. More...
 

Public Member Functions

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

Private Member Functions

virtual void DoRun (void)
 Implementation to actually run this TestCase. More...
 

Private Attributes

TestSuite::Type m_type
 Type of this TestSuite. More...
 

Additional Inherited Members

- 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...
 
TestCaseGetParent () const
 Get the parent of this TestCsse. More...
 
bool IsStatusFailure (void) const
 Check if any tests failed. More...
 
bool IsStatusSuccess (void) 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 (void) const
 Check if this run should assert on failure. More...
 
bool MustContinueOnFailure (void) 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...
 

Detailed Description

A suite of tests to run.

See also
sample-test-suite.cc

Definition at line 1342 of file test.h.

Member Enumeration Documentation

◆ Type

Type of test.

Enumerator
ALL 
BVT 

This test suite implements a Build Verification Test.

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 1349 of file test.h.

Constructor & Destructor Documentation

◆ TestSuite()

ns3::TestSuite::TestSuite ( std::string  name,
TestSuite::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 483 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 ( void  )
privatevirtual

Implementation to actually run this TestCase.

Subclasses should override this method to conduct their tests.

Implements ns3::TestCase.

Definition at line 499 of file test.cc.

References NS_LOG_FUNCTION.

◆ GetTestType()

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

get the kind of test this test suite implements

Returns
The Type of the suite.

Definition at line 492 of file test.cc.

References m_type, and NS_LOG_FUNCTION.

Member Data Documentation

◆ m_type

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

Type of this TestSuite.

Definition at line 1377 of file test.h.

Referenced by GetTestType().


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