swift
testsimpluginfsxp3d.cpp
Go to the documentation of this file.
1 // SPDX-FileCopyrightText: Copyright (C) 2018 swift Project Community / Contributors
2 // SPDX-License-Identifier: GPL-3.0-or-later OR LicenseRef-swift-pilot-client-1
3 
5 
11 #include "testsimpluginfsxp3d.h"
12 
13 #include <QTest>
14 
18 
19 using namespace swift::simplugin::fsxcommon;
20 
21 namespace swift::simplugin::fsxp3d
22 {
23  void CSimPluginFsxP3d::resolveSymbols()
24  {
25 #ifdef Q_OS_WIN64
26  QVERIFY2(loadAndResolveP3DSimConnect(P3DSimConnectv42), "Could not load and resolve SimConnect library!");
27 #else
28  QVERIFY2(loadAndResolveFsxSimConnect(false), "Could not load and resolve SimConnect library!");
29 #endif
30  HANDLE hSimConnect;
31  SimConnect_Open(&hSimConnect, "Test", nullptr, 0, nullptr, 0);
32  SimConnect_Close(hSimConnect);
33  }
34 
35  void CSimPluginFsxP3d::requestIds()
36  {
37  DWORD objectId = 666;
38  DWORD requestId = CSimulatorFsxCommon::unitTestRequestId(CSimConnectObject::AircraftNonAtc);
39  CSimConnectObject simObject(CSimConnectObject::AircraftNonAtc);
40  simObject.setRequestId(requestId);
41  simObject.setObjectId(objectId);
42 
47 
48  requestId = simObject.getRequestId(CSimConnectDefinitions::SimObjectAdd);
50  QVERIFY(sor == CSimConnectDefinitions::SimObjectAdd);
51 
52  requestId = simObject.getRequestId(CSimConnectDefinitions::SimObjectLights);
54  QVERIFY(sor == CSimConnectDefinitions::SimObjectLights);
55 
56  requestId = simObject.getRequestId(CSimConnectDefinitions::SimObjectRemove);
58  QVERIFY(sor == CSimConnectDefinitions::SimObjectRemove);
59 
60  requestId = CSimulatorFsxCommon::unitTestRequestId(CSimConnectObject::TerrainProbe);
61  simObject.setRequestId(requestId);
62 
63  requestId = simObject.getRequestId(CSimConnectDefinitions::SimObjectPositionData);
65  QVERIFY(sor == CSimConnectDefinitions::SimObjectPositionData);
66 
67  requestId = simObject.getRequestId(CSimConnectDefinitions::SimObjectMisc);
69  QVERIFY(sor == CSimConnectDefinitions::SimObjectMisc);
70  }
71 } // namespace swift::simplugin::fsxp3d
72 
75 
SimObjectRequest
SimObject requests used for AI aircraft and probes.
Class representing a SimConnect object.
static bool isRequestForSimObjTerrainProbe(DWORD requestId)
Request for probe (elevation)?
static CSimConnectDefinitions::SimObjectRequest requestToSimObjectRequest(DWORD requestId)
Sub request type.
static bool isRequestForSimObjAircraft(DWORD requestId)
Request for sim data (request in range of sim data)?
FSXCOMMON_EXPORT bool loadAndResolveFsxSimConnect(bool manifestProbing)
Load and resolve FSX SimConnect.
unsigned long DWORD
Fake Windows DWORD.
SWIFTTEST_MAIN(SwiftSimPluginFsxP3D::CSimPluginFsxP3d)
main