1
0
Fork 0
flightgear/test_suite/system_tests/subsystems/test_instanced_creation.hxx
Edward d'Auvergne 45243c96e8 TestSuite: System tests for subsystem creation via the global registrations.
This covers all instantiated SGSubsystem derived classes, i.e. those that are
not base classes, including subsystem groups.  Both non-instanced and instanced
subsystem creation is tested.  The tests for subsystems yet to be registered are
commented out.
2022-11-17 15:57:39 +00:00

113 lines
4.4 KiB
C++

/*
* Copyright (C) 2018 Edward d'Auvergne
*
* This file is part of the program FlightGear.
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#ifndef _FG_INSTANCED_SUBSYSTEM_SYSTEM_TESTS_HXX
#define _FG_INSTANCED_SUBSYSTEM_SYSTEM_TESTS_HXX
#include <cppunit/extensions/HelperMacros.h>
#include <cppunit/TestFixture.h>
#include <simgear/structure/subsystem_mgr.hxx>
// The system tests.
class InstancedSubsystemTests : public CppUnit::TestFixture
{
// Set up the test suite.
CPPUNIT_TEST_SUITE(InstancedSubsystemTests);
//CPPUNIT_TEST(testADF); // Not registered yet.
//CPPUNIT_TEST(testAirspeedIndicator); // Not registered yet.
//CPPUNIT_TEST(testAltimeter); // Not registered yet.
//CPPUNIT_TEST(testAttitudeIndicator); // Not registered yet.
//CPPUNIT_TEST(testCommRadio); // Not registered yet.
//CPPUNIT_TEST(testClock); // Not registered yet.
//CPPUNIT_TEST(testDME); // Not registered yet.
//CPPUNIT_TEST(testFGKR_87); // Not registered yet.
//CPPUNIT_TEST(testFGMarkerBeacon); // Not registered yet.
//CPPUNIT_TEST(testFGNavRadio); // Not registered yet.
//CPPUNIT_TEST(testGPS); // Not registered yet.
//CPPUNIT_TEST(testGSDI); // Not registered yet.
//CPPUNIT_TEST(testHeadingIndicator); // Not registered yet.
//CPPUNIT_TEST(testHeadingIndicatorDG); // Not registered yet.
//CPPUNIT_TEST(testHeadingIndicatorFG); // Not registered yet.
//CPPUNIT_TEST(testHUD); // Segfault.
//CPPUNIT_TEST(testInstVerticalSpeedIndicator); // Not registered yet.
//CPPUNIT_TEST(testKLN89); // Not registered yet.
//CPPUNIT_TEST(testMagCompass); // Not registered yet.
//CPPUNIT_TEST(testMasterReferenceGyro); // Not registered yet.
//CPPUNIT_TEST(testMK_VIII); // Not registered yet.
//CPPUNIT_TEST(testNavRadio); // Segfault.
//CPPUNIT_TEST(testRadarAltimeter); // Not registered yet.
//CPPUNIT_TEST(testSlipSkidBall); // Not registered yet.
//CPPUNIT_TEST(testTACAN); // Not registered yet.
//CPPUNIT_TEST(testTCAS); // Not registered yet.
//CPPUNIT_TEST(testTransponder); // Not registered yet.
//CPPUNIT_TEST(testTurnIndicator); // Not registered yet.
//CPPUNIT_TEST(testVerticalSpeedIndicator); // Not registered yet.
CPPUNIT_TEST_SUITE_END();
public:
// Set up function for each test.
void setUp();
// Clean up after each test.
void tearDown();
// The subsystem tests.
void testADF();
void testAirspeedIndicator();
void testAltimeter();
void testAttitudeIndicator();
void testClock();
void testCommRadio();
void testDME();
void testFGKR_87();
void testFGMarkerBeacon();
void testFGNavRadio();
void testGPS();
void testGSDI();
void testHeadingIndicator();
void testHeadingIndicatorDG();
void testHeadingIndicatorFG();
void testHUD();
void testInstVerticalSpeedIndicator();
void testKLN89();
void testMagCompass();
void testMasterReferenceGyro();
void testMK_VIII();
void testNavRadio();
void testRadarAltimeter();
void testSlipSkidBall();
void testTACAN();
void testTCAS();
void testTransponder();
void testTurnIndicator();
void testVerticalSpeedIndicator();
private:
// The subsystem manager.
std::unique_ptr<SGSubsystemMgr> _mgr;
// Helper functions.
void create(const char* name);
};
#endif // _FG_INSTANCED_SUBSYSTEM_SYSTEM_TESTS_HXX