Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Q
qgroundcontrol
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Valentin Platzgummer
qgroundcontrol
Commits
de969afa
Commit
de969afa
authored
May 27, 2018
by
DonLakeFlyer
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Camera/Transects unit tests and fixes
parent
34931bf2
Changes
12
Hide whitespace changes
Inline
Side-by-side
Showing
12 changed files
with
120 additions
and
33 deletions
+120
-33
CameraCalcTest.cc
src/MissionManager/CameraCalcTest.cc
+45
-2
CameraCalcTest.h
src/MissionManager/CameraCalcTest.h
+3
-1
CorridorScanComplexItem.cc
src/MissionManager/CorridorScanComplexItem.cc
+5
-0
CorridorScanComplexItem.h
src/MissionManager/CorridorScanComplexItem.h
+5
-4
SurveyComplexItem.cc
src/MissionManager/SurveyComplexItem.cc
+6
-0
SurveyComplexItem.h
src/MissionManager/SurveyComplexItem.h
+1
-0
TransectStyleComplexItem.cc
src/MissionManager/TransectStyleComplexItem.cc
+1
-5
TransectStyleComplexItem.h
src/MissionManager/TransectStyleComplexItem.h
+2
-1
TransectStyleComplexItemTest.cc
src/MissionManager/TransectStyleComplexItemTest.cc
+39
-12
TransectStyleComplexItemTest.h
src/MissionManager/TransectStyleComplexItemTest.h
+6
-5
UnitTest.cc
src/qgcunittest/UnitTest.cc
+5
-2
UnitTest.h
src/qgcunittest/UnitTest.h
+2
-1
No files found.
src/MissionManager/CameraCalcTest.cc
View file @
de969afa
...
@@ -22,6 +22,8 @@ void CameraCalcTest::init(void)
...
@@ -22,6 +22,8 @@ void CameraCalcTest::init(void)
_offlineVehicle
=
new
Vehicle
(
MAV_AUTOPILOT_PX4
,
MAV_TYPE_QUADROTOR
,
qgcApp
()
->
toolbox
()
->
firmwarePluginManager
(),
this
);
_offlineVehicle
=
new
Vehicle
(
MAV_AUTOPILOT_PX4
,
MAV_TYPE_QUADROTOR
,
qgcApp
()
->
toolbox
()
->
firmwarePluginManager
(),
this
);
_cameraCalc
=
new
CameraCalc
(
_offlineVehicle
,
"CameraCalcUnitTest"
/* settingsGroup */
,
this
);
_cameraCalc
=
new
CameraCalc
(
_offlineVehicle
,
"CameraCalcUnitTest"
/* settingsGroup */
,
this
);
_cameraCalc
->
cameraName
()
->
setRawValue
(
_cameraCalc
->
customCameraName
());
_cameraCalc
->
setDirty
(
false
);
_rgSignals
[
dirtyChangedIndex
]
=
SIGNAL
(
dirtyChanged
(
bool
));
_rgSignals
[
dirtyChangedIndex
]
=
SIGNAL
(
dirtyChanged
(
bool
));
_rgSignals
[
imageFootprintSideChangedIndex
]
=
SIGNAL
(
imageFootprintSideChanged
(
double
));
_rgSignals
[
imageFootprintSideChangedIndex
]
=
SIGNAL
(
imageFootprintSideChanged
(
double
));
...
@@ -80,11 +82,52 @@ void CameraCalcTest::_testDirty(void)
...
@@ -80,11 +82,52 @@ void CameraCalcTest::_testDirty(void)
}
}
rgFacts
.
clear
();
rgFacts
.
clear
();
_cameraCalc
->
cameraName
()
->
setRawValue
(
_cameraCalc
->
customCameraName
());
_cameraCalc
->
setDistanceToSurfaceRelative
(
!
_cameraCalc
->
distanceToSurfaceRelative
());
QVERIFY
(
_cameraCalc
->
dirty
());
QVERIFY
(
_cameraCalc
->
dirty
());
_multiSpy
->
clearAllSignals
();
_multiSpy
->
clearAllSignals
();
_cameraCalc
->
setDistanceToSurfaceRelative
(
!
_cameraCalc
->
distanceToSurfaceRelativ
e
());
_cameraCalc
->
cameraName
()
->
setRawValue
(
_cameraCalc
->
manualCameraNam
e
());
QVERIFY
(
_cameraCalc
->
dirty
());
QVERIFY
(
_cameraCalc
->
dirty
());
_multiSpy
->
clearAllSignals
();
_multiSpy
->
clearAllSignals
();
}
}
void
CameraCalcTest
::
_testAdjustedFootprint
(
void
)
{
double
adjustedFootprintFrontal
=
_cameraCalc
->
adjustedFootprintFrontal
()
->
rawValue
().
toDouble
();
double
adjustedFootprintSide
=
_cameraCalc
->
adjustedFootprintSide
()
->
rawValue
().
toDouble
();
_cameraCalc
->
valueSetIsDistance
()
->
setRawValue
(
true
);
changeFactValue
(
_cameraCalc
->
distanceToSurface
());
QVERIFY
(
adjustedFootprintFrontal
!=
_cameraCalc
->
adjustedFootprintFrontal
()
->
rawValue
().
toDouble
());
QVERIFY
(
adjustedFootprintSide
!=
_cameraCalc
->
adjustedFootprintSide
()
->
rawValue
().
toDouble
());
adjustedFootprintFrontal
=
_cameraCalc
->
adjustedFootprintFrontal
()
->
rawValue
().
toDouble
();
adjustedFootprintSide
=
_cameraCalc
->
adjustedFootprintSide
()
->
rawValue
().
toDouble
();
_cameraCalc
->
valueSetIsDistance
()
->
setRawValue
(
false
);
changeFactValue
(
_cameraCalc
->
imageDensity
());
QVERIFY
(
adjustedFootprintFrontal
!=
_cameraCalc
->
adjustedFootprintFrontal
()
->
rawValue
().
toDouble
());
QVERIFY
(
adjustedFootprintSide
!=
_cameraCalc
->
adjustedFootprintSide
()
->
rawValue
().
toDouble
());
adjustedFootprintFrontal
=
_cameraCalc
->
adjustedFootprintFrontal
()
->
rawValue
().
toDouble
();
_cameraCalc
->
valueSetIsDistance
()
->
setRawValue
(
true
);
changeFactValue
(
_cameraCalc
->
frontalOverlap
());
QVERIFY
(
adjustedFootprintFrontal
!=
_cameraCalc
->
adjustedFootprintFrontal
()
->
rawValue
().
toDouble
());
adjustedFootprintSide
=
_cameraCalc
->
adjustedFootprintSide
()
->
rawValue
().
toDouble
();
_cameraCalc
->
valueSetIsDistance
()
->
setRawValue
(
false
);
changeFactValue
(
_cameraCalc
->
sideOverlap
());
QVERIFY
(
adjustedFootprintSide
!=
_cameraCalc
->
adjustedFootprintSide
()
->
rawValue
().
toDouble
());
}
void
CameraCalcTest
::
_testAltDensityRecalc
(
void
)
{
_cameraCalc
->
valueSetIsDistance
()
->
setRawValue
(
true
);
double
imageDensity
=
_cameraCalc
->
imageDensity
()
->
rawValue
().
toDouble
();
_cameraCalc
->
distanceToSurface
()
->
setRawValue
(
_cameraCalc
->
distanceToSurface
()
->
rawValue
().
toDouble
()
+
1
);
QVERIFY
(
imageDensity
!=
_cameraCalc
->
imageDensity
()
->
rawValue
().
toDouble
());
_cameraCalc
->
valueSetIsDistance
()
->
setRawValue
(
false
);
double
distanceToSurface
=
_cameraCalc
->
distanceToSurface
()
->
rawValue
().
toDouble
();
_cameraCalc
->
imageDensity
()
->
setRawValue
(
_cameraCalc
->
imageDensity
()
->
rawValue
().
toDouble
()
+
1
);
QVERIFY
(
distanceToSurface
!=
_cameraCalc
->
distanceToSurface
()
->
rawValue
().
toDouble
());
}
src/MissionManager/CameraCalcTest.h
View file @
de969afa
...
@@ -27,7 +27,9 @@ protected:
...
@@ -27,7 +27,9 @@ protected:
void
cleanup
(
void
)
final
;
void
cleanup
(
void
)
final
;
private
slots
:
private
slots
:
void
_testDirty
(
void
);
void
_testDirty
(
void
);
void
_testAdjustedFootprint
(
void
);
void
_testAltDensityRecalc
(
void
);
private:
private:
enum
{
enum
{
...
...
src/MissionManager/CorridorScanComplexItem.cc
View file @
de969afa
...
@@ -480,3 +480,8 @@ bool CorridorScanComplexItem::readyForSave(void) const
...
@@ -480,3 +480,8 @@ bool CorridorScanComplexItem::readyForSave(void) const
{
{
return
TransectStyleComplexItem
::
readyForSave
();
return
TransectStyleComplexItem
::
readyForSave
();
}
}
double
CorridorScanComplexItem
::
timeBetweenShots
(
void
)
{
return
_cruiseSpeed
==
0
?
0
:
_cameraCalc
.
adjustedFootprintSide
()
->
rawValue
().
toDouble
()
/
_cruiseSpeed
;
}
src/MissionManager/CorridorScanComplexItem.h
View file @
de969afa
...
@@ -33,15 +33,16 @@ public:
...
@@ -33,15 +33,16 @@ public:
Q_INVOKABLE
void
rotateEntryPoint
(
void
);
Q_INVOKABLE
void
rotateEntryPoint
(
void
);
// Overrides from ComplexMissionItem
bool
load
(
const
QJsonObject
&
complexObject
,
int
sequenceNumber
,
QString
&
errorString
)
final
;
QString
mapVisualQML
(
void
)
const
final
{
return
QStringLiteral
(
"CorridorScanMapVisual.qml"
);
}
// Overrides from TransectStyleComplexItem
// Overrides from TransectStyleComplexItem
void
save
(
QJsonArray
&
planItems
)
final
;
void
save
(
QJsonArray
&
planItems
)
final
;
bool
specifiesCoordinate
(
void
)
const
final
;
bool
specifiesCoordinate
(
void
)
const
final
;
void
appendMissionItems
(
QList
<
MissionItem
*>&
items
,
QObject
*
missionItemParent
)
final
;
void
appendMissionItems
(
QList
<
MissionItem
*>&
items
,
QObject
*
missionItemParent
)
final
;
void
applyNewAltitude
(
double
newAltitude
)
final
;
void
applyNewAltitude
(
double
newAltitude
)
final
;
double
timeBetweenShots
(
void
)
final
;
// Overrides from ComplexMissionItem
bool
load
(
const
QJsonObject
&
complexObject
,
int
sequenceNumber
,
QString
&
errorString
)
final
;
QString
mapVisualQML
(
void
)
const
final
{
return
QStringLiteral
(
"CorridorScanMapVisual.qml"
);
}
// Overrides from VisualMissionionItem
// Overrides from VisualMissionionItem
QString
commandDescription
(
void
)
const
final
{
return
tr
(
"Corridor Scan"
);
}
QString
commandDescription
(
void
)
const
final
{
return
tr
(
"Corridor Scan"
);
}
...
...
src/MissionManager/SurveyComplexItem.cc
View file @
de969afa
...
@@ -1433,3 +1433,9 @@ void SurveyComplexItem::rotateEntryPoint(void)
...
@@ -1433,3 +1433,9 @@ void SurveyComplexItem::rotateEntryPoint(void)
setDirty
(
true
);
setDirty
(
true
);
}
}
double
SurveyComplexItem
::
timeBetweenShots
(
void
)
{
return
_cruiseSpeed
==
0
?
0
:
_cameraCalc
.
adjustedFootprintFrontal
()
->
rawValue
().
toDouble
()
/
_cruiseSpeed
;
}
src/MissionManager/SurveyComplexItem.h
View file @
de969afa
...
@@ -40,6 +40,7 @@ public:
...
@@ -40,6 +40,7 @@ public:
bool
specifiesCoordinate
(
void
)
const
final
{
return
true
;
}
bool
specifiesCoordinate
(
void
)
const
final
{
return
true
;
}
void
appendMissionItems
(
QList
<
MissionItem
*>&
items
,
QObject
*
missionItemParent
)
final
;
void
appendMissionItems
(
QList
<
MissionItem
*>&
items
,
QObject
*
missionItemParent
)
final
;
void
applyNewAltitude
(
double
newAltitude
)
final
;
void
applyNewAltitude
(
double
newAltitude
)
final
;
double
timeBetweenShots
(
void
)
final
;
// Overrides from VisualMissionionItem
// Overrides from VisualMissionionItem
QString
commandDescription
(
void
)
const
final
{
return
tr
(
"Survey"
);
}
QString
commandDescription
(
void
)
const
final
{
return
tr
(
"Survey"
);
}
...
...
src/MissionManager/TransectStyleComplexItem.cc
View file @
de969afa
...
@@ -309,11 +309,6 @@ void TransectStyleComplexItem::applyNewAltitude(double newAltitude)
...
@@ -309,11 +309,6 @@ void TransectStyleComplexItem::applyNewAltitude(double newAltitude)
//_altitudeFact.setRawValue(newAltitude);
//_altitudeFact.setRawValue(newAltitude);
}
}
double
TransectStyleComplexItem
::
timeBetweenShots
(
void
)
{
return
_cruiseSpeed
==
0
?
0
:
_cameraCalc
.
adjustedFootprintSide
()
->
rawValue
().
toDouble
()
/
_cruiseSpeed
;
}
void
TransectStyleComplexItem
::
_updateCoordinateAltitudes
(
void
)
void
TransectStyleComplexItem
::
_updateCoordinateAltitudes
(
void
)
{
{
emit
coordinateChanged
(
coordinate
());
emit
coordinateChanged
(
coordinate
());
...
@@ -383,6 +378,7 @@ void TransectStyleComplexItem::_rebuildTransects(void)
...
@@ -383,6 +378,7 @@ void TransectStyleComplexItem::_rebuildTransects(void)
_rebuildTransectsPhase2
();
_rebuildTransectsPhase2
();
emit
lastSequenceNumberChanged
(
lastSequenceNumber
());
emit
lastSequenceNumberChanged
(
lastSequenceNumber
());
emit
timeBetweenShotsChanged
();
}
}
void
TransectStyleComplexItem
::
_queryTransectsPathHeightInfo
(
void
)
void
TransectStyleComplexItem
::
_queryTransectsPathHeightInfo
(
void
)
...
...
src/MissionManager/TransectStyleComplexItem.h
View file @
de969afa
...
@@ -59,12 +59,13 @@ public:
...
@@ -59,12 +59,13 @@ public:
Fact
*
terrainAdjustMaxClimbRate
(
void
)
{
return
&
_terrainAdjustMaxDescentRateFact
;
}
Fact
*
terrainAdjustMaxClimbRate
(
void
)
{
return
&
_terrainAdjustMaxDescentRateFact
;
}
int
cameraShots
(
void
)
const
{
return
_cameraShots
;
}
int
cameraShots
(
void
)
const
{
return
_cameraShots
;
}
double
timeBetweenShots
(
void
);
double
coveredArea
(
void
)
const
;
double
coveredArea
(
void
)
const
;
double
cameraMinTriggerInterval
(
void
)
const
{
return
_cameraMinTriggerInterval
;
}
double
cameraMinTriggerInterval
(
void
)
const
{
return
_cameraMinTriggerInterval
;
}
bool
hoverAndCaptureAllowed
(
void
)
const
;
bool
hoverAndCaptureAllowed
(
void
)
const
;
bool
followTerrain
(
void
)
const
{
return
_followTerrain
;
}
bool
followTerrain
(
void
)
const
{
return
_followTerrain
;
}
virtual
double
timeBetweenShots
(
void
)
{
return
0
;
}
// Most be overridden. Implementation here is needed for unit testing.
void
setFollowTerrain
(
bool
followTerrain
);
void
setFollowTerrain
(
bool
followTerrain
);
// Overrides from ComplexMissionItem
// Overrides from ComplexMissionItem
...
...
src/MissionManager/TransectStyleComplexItemTest.cc
View file @
de969afa
...
@@ -25,6 +25,10 @@ void TransectStyleComplexItemTest::init(void)
...
@@ -25,6 +25,10 @@ void TransectStyleComplexItemTest::init(void)
_offlineVehicle
=
new
Vehicle
(
MAV_AUTOPILOT_PX4
,
MAV_TYPE_QUADROTOR
,
qgcApp
()
->
toolbox
()
->
firmwarePluginManager
(),
this
);
_offlineVehicle
=
new
Vehicle
(
MAV_AUTOPILOT_PX4
,
MAV_TYPE_QUADROTOR
,
qgcApp
()
->
toolbox
()
->
firmwarePluginManager
(),
this
);
_transectStyleItem
=
new
TransectStyleItem
(
_offlineVehicle
,
this
);
_transectStyleItem
=
new
TransectStyleItem
(
_offlineVehicle
,
this
);
_transectStyleItem
->
cameraTriggerInTurnAround
()
->
setRawValue
(
false
);
_transectStyleItem
->
cameraCalc
()
->
cameraName
()
->
setRawValue
(
_transectStyleItem
->
cameraCalc
()
->
customCameraName
());
_transectStyleItem
->
cameraCalc
()
->
valueSetIsDistance
()
->
setRawValue
(
true
);
_transectStyleItem
->
cameraCalc
()
->
distanceToSurface
()
->
setRawValue
(
100
);
_setSurveyAreaPolygon
();
_setSurveyAreaPolygon
();
_transectStyleItem
->
setDirty
(
false
);
_transectStyleItem
->
setDirty
(
false
);
...
@@ -107,36 +111,58 @@ void TransectStyleComplexItemTest::_setSurveyAreaPolygon(void)
...
@@ -107,36 +111,58 @@ void TransectStyleComplexItemTest::_setSurveyAreaPolygon(void)
void
TransectStyleComplexItemTest
::
_testRebuildTransects
(
void
)
void
TransectStyleComplexItemTest
::
_testRebuildTransects
(
void
)
{
{
// Changing the survey polygon should trigger:
// Changing the survey polygon should trigger:
// _rebuildTransects call
// _rebuildTransects call
s
// coveredAreaChanged signal
// coveredAreaChanged signal
// lastSequenceNumberChanged signal
// lastSequenceNumberChanged signal
_adjustSurveAreaPolygon
();
_adjustSurveAreaPolygon
();
QVERIFY
(
_transectStyleItem
->
rebuildTransectsCalled
);
QVERIFY
(
_transectStyleItem
->
rebuildTransectsPhase1Called
);
QVERIFY
(
_transectStyleItem
->
rebuildTransectsPhase2Called
);
QVERIFY
(
_multiSpy
->
checkSignalsByMask
(
coveredAreaChangedMask
|
lastSequenceNumberChangedMask
));
QVERIFY
(
_multiSpy
->
checkSignalsByMask
(
coveredAreaChangedMask
|
lastSequenceNumberChangedMask
));
_transectStyleItem
->
rebuildTransectsCalled
=
false
;
_transectStyleItem
->
rebuildTransectsPhase1Called
=
false
;
_transectStyleItem
->
rebuildTransectsPhase2Called
=
false
;
_transectStyleItem
->
setDirty
(
false
);
_transectStyleItem
->
setDirty
(
false
);
_multiSpy
->
clearAllSignals
();
_multiSpy
->
clearAllSignals
();
// Changes to these facts should trigger:
// Changes to these facts should trigger:
// _rebuildTransects call
// _rebuildTransects call
s
// lastSequenceNumberChanged signal
// lastSequenceNumberChanged signal
QList
<
Fact
*>
rgFacts
;
QList
<
Fact
*>
rgFacts
;
rgFacts
<<
_transectStyleItem
->
turnAroundDistance
()
rgFacts
<<
_transectStyleItem
->
turnAroundDistance
()
<<
_transectStyleItem
->
cameraTriggerInTurnAround
()
<<
_transectStyleItem
->
cameraTriggerInTurnAround
()
<<
_transectStyleItem
->
hoverAndCapture
()
<<
_transectStyleItem
->
hoverAndCapture
()
<<
_transectStyleItem
->
refly90Degrees
()
<<
_transectStyleItem
->
refly90Degrees
()
<<
_transectStyleItem
->
cameraCalc
()
->
adjustedFootprintSide
()
<<
_transectStyleItem
->
cameraCalc
()
->
frontalOverlap
()
<<
_transectStyleItem
->
cameraCalc
()
->
adjustedFootprintFrontal
();
<<
_transectStyleItem
->
cameraCalc
()
->
sideOverlap
();
foreach
(
Fact
*
fact
,
rgFacts
)
{
foreach
(
Fact
*
fact
,
rgFacts
)
{
qDebug
()
<<
fact
->
name
();
qDebug
()
<<
fact
->
name
();
changeFactValue
(
fact
);
changeFactValue
(
fact
);
QVERIFY
(
_transectStyleItem
->
rebuildTransectsCalled
);
QVERIFY
(
_transectStyleItem
->
rebuildTransectsPhase1Called
);
QVERIFY
(
_transectStyleItem
->
rebuildTransectsPhase2Called
);
QVERIFY
(
_multiSpy
->
checkSignalsByMask
(
lastSequenceNumberChangedMask
));
QVERIFY
(
_multiSpy
->
checkSignalsByMask
(
lastSequenceNumberChangedMask
));
_transectStyleItem
->
setDirty
(
false
);
_transectStyleItem
->
setDirty
(
false
);
_multiSpy
->
clearAllSignals
();
_multiSpy
->
clearAllSignals
();
_transectStyleItem
->
rebuildTransectsCalled
=
false
;
_transectStyleItem
->
rebuildTransectsPhase1Called
=
false
;
_transectStyleItem
->
rebuildTransectsPhase2Called
=
false
;
}
}
rgFacts
.
clear
();
rgFacts
.
clear
();
_transectStyleItem
->
cameraCalc
()
->
valueSetIsDistance
()
->
setRawValue
(
false
);
_transectStyleItem
->
rebuildTransectsPhase1Called
=
false
;
_transectStyleItem
->
rebuildTransectsPhase2Called
=
false
;
changeFactValue
(
_transectStyleItem
->
cameraCalc
()
->
imageDensity
());
QVERIFY
(
_transectStyleItem
->
rebuildTransectsPhase1Called
);
QVERIFY
(
_transectStyleItem
->
rebuildTransectsPhase2Called
);
QVERIFY
(
_multiSpy
->
checkSignalsByMask
(
lastSequenceNumberChangedMask
));
_multiSpy
->
clearAllSignals
();
_transectStyleItem
->
cameraCalc
()
->
valueSetIsDistance
()
->
setRawValue
(
true
);
_transectStyleItem
->
rebuildTransectsPhase1Called
=
false
;
_transectStyleItem
->
rebuildTransectsPhase2Called
=
false
;
changeFactValue
(
_transectStyleItem
->
cameraCalc
()
->
distanceToSurface
());
QVERIFY
(
_transectStyleItem
->
rebuildTransectsPhase1Called
);
QVERIFY
(
_transectStyleItem
->
rebuildTransectsPhase2Called
);
QVERIFY
(
_multiSpy
->
checkSignalsByMask
(
lastSequenceNumberChangedMask
));
_multiSpy
->
clearAllSignals
();
}
}
void
TransectStyleComplexItemTest
::
_testDistanceSignalling
(
void
)
void
TransectStyleComplexItemTest
::
_testDistanceSignalling
(
void
)
...
@@ -192,18 +218,19 @@ void TransectStyleComplexItemTest::_testAltMode(void)
...
@@ -192,18 +218,19 @@ void TransectStyleComplexItemTest::_testAltMode(void)
}
}
TransectStyleItem
::
TransectStyleItem
(
Vehicle
*
vehicle
,
QObject
*
parent
)
TransectStyleItem
::
TransectStyleItem
(
Vehicle
*
vehicle
,
QObject
*
parent
)
:
TransectStyleComplexItem
(
vehicle
,
false
/* flyView */
,
QStringLiteral
(
"UnitTestTransect"
),
parent
)
:
TransectStyleComplexItem
(
vehicle
,
false
/* flyView */
,
QStringLiteral
(
"UnitTestTransect"
),
parent
)
,
rebuildTransectsCalled
(
false
)
,
rebuildTransectsPhase1Called
(
false
)
,
rebuildTransectsPhase2Called
(
false
)
{
{
}
}
void
TransectStyleItem
::
_rebuildTransectsPhase1
(
void
)
void
TransectStyleItem
::
_rebuildTransectsPhase1
(
void
)
{
{
rebuildTransectsCalled
=
true
;
rebuildTransects
Phase1
Called
=
true
;
}
}
void
TransectStyleItem
::
_rebuildTransectsPhase2
(
void
)
void
TransectStyleItem
::
_rebuildTransectsPhase2
(
void
)
{
{
rebuildTransectsPhase2Called
=
true
;
}
}
src/MissionManager/TransectStyleComplexItemTest.h
View file @
de969afa
...
@@ -29,10 +29,10 @@ protected:
...
@@ -29,10 +29,10 @@ protected:
void
cleanup
(
void
)
final
;
void
cleanup
(
void
)
final
;
private
slots
:
private
slots
:
void
_testDirty
(
void
);
void
_testDirty
(
void
);
void
_testRebuildTransects
(
void
);
void
_testRebuildTransects
(
void
);
void
_testDistanceSignalling
(
void
);
void
_testDistanceSignalling
(
void
);
void
_testAltMode
(
void
);
void
_testAltMode
(
void
);
private:
private:
void
_setSurveyAreaPolygon
(
void
);
void
_setSurveyAreaPolygon
(
void
);
...
@@ -97,7 +97,8 @@ public:
...
@@ -97,7 +97,8 @@ public:
void
appendMissionItems
(
QList
<
MissionItem
*>&
items
,
QObject
*
missionItemParent
)
final
{
Q_UNUSED
(
items
);
Q_UNUSED
(
missionItemParent
);
}
void
appendMissionItems
(
QList
<
MissionItem
*>&
items
,
QObject
*
missionItemParent
)
final
{
Q_UNUSED
(
items
);
Q_UNUSED
(
missionItemParent
);
}
void
applyNewAltitude
(
double
newAltitude
)
final
{
Q_UNUSED
(
newAltitude
);
}
void
applyNewAltitude
(
double
newAltitude
)
final
{
Q_UNUSED
(
newAltitude
);
}
bool
rebuildTransectsCalled
;
bool
rebuildTransectsPhase1Called
;
bool
rebuildTransectsPhase2Called
;
private
slots
:
private
slots
:
// Overrides from TransectStyleComplexItem
// Overrides from TransectStyleComplexItem
...
...
src/qgcunittest/UnitTest.cc
View file @
de969afa
...
@@ -524,11 +524,14 @@ bool UnitTest::doubleNaNCompare(double value1, double value2)
...
@@ -524,11 +524,14 @@ bool UnitTest::doubleNaNCompare(double value1, double value2)
}
}
}
}
void
UnitTest
::
changeFactValue
(
Fact
*
fact
)
void
UnitTest
::
changeFactValue
(
Fact
*
fact
,
double
increment
)
{
{
if
(
fact
->
typeIsBool
())
{
if
(
fact
->
typeIsBool
())
{
fact
->
setRawValue
(
!
fact
->
rawValue
().
toBool
());
fact
->
setRawValue
(
!
fact
->
rawValue
().
toBool
());
}
else
{
}
else
{
fact
->
setRawValue
(
fact
->
rawValue
().
toDouble
()
+
1
);
if
(
increment
==
0
)
{
increment
=
1
;
}
fact
->
setRawValue
(
fact
->
rawValue
().
toDouble
()
+
increment
);
}
}
}
}
src/qgcunittest/UnitTest.h
View file @
de969afa
...
@@ -98,7 +98,8 @@ public:
...
@@ -98,7 +98,8 @@ public:
static
bool
doubleNaNCompare
(
double
value1
,
double
value2
);
static
bool
doubleNaNCompare
(
double
value1
,
double
value2
);
/// Changes the Facts rawValue such that it emits a valueChanged signal.
/// Changes the Facts rawValue such that it emits a valueChanged signal.
void
changeFactValue
(
Fact
*
fact
);
/// @param increment 0 use standard increment, other increment by specified amount if double value
void
changeFactValue
(
Fact
*
fact
,
double
increment
=
0
);
protected
slots
:
protected
slots
:
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment