You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository has been archived by the owner on Aug 5, 2022. It is now read-only.
lots of dead code due to the weak typing of the Element tree (e.g. virtual methods that have to be implemented but are never actually used, such as getKind());
a lot of errors cases are not covered (probably the largest source of coverage misses);
most of remote commands aren't tested (ParameterMgr.cpp);
some methods are only used by plugins and aren't tested; likewise, some client methods are not tested;
some features are not tested at all (e.g. simulation mode, parameter adaptation) or poorly tested (e.g. showMapping);
a large amount of parameter getters/setters (on one hand, between the user and the blackboard; on the other hand, between the blackboard and the subsystems) are not tested.
The text was updated successfully, but these errors were encountered:
Maybe we should add -fno-inline -fno-inline-small-functions -fno-default-inline to improve method coverage accuracy. I am not sure they are needed though, as we are compiling in -O0
FormattedSubsystemObject
FormatedSubsystemObject is used by nearly all plugins. Maybe we should modify the test subsystem to use it.
rogue parameters/parameter handle in parameter/ParameterHandle.cpp
get and set of rogue parameters should be made template. The set and get code is duplicated everywhere.
Anyway, templating can reduce line count
True method that are not called are not instantiated.
The current code coverage is . We can make it better by:
Let's analyse the code coverage report to identify dead code and untested parts:
libparameter
logValue
(in several classes): only used by the remote interface; maybe it shouldn't be a method.ParameterMgr
Subsystem
showMapping
on formatted subsytem object (here, here and here).Element Handle
Fixed Point
Integer
toPlainInteger
(only used in the alsa plugin)ParameterType
setUnit
(nobody uses it)ArrayParameter
BitParameter / BitwiseAreaConfiguration
FormattedSubsystemObject
SubsystemObject
DomainConfiguration
Floats
CriterionRule
Linear and Log Adaptations
not tested at all:
Element god class
findChildOfKind
Criterion
hasBeenModified
getCriterionName
Mapping
getItem
,getItemAsInteger
)Simulated BackSynchronizer
not tested at all
BitParameterBlockType
Default builder
SystemClass
Subsystem Object Creator
libxmlserializer
libremote-processor
The coverage misses only involve error cases except a function only used by a non-tested remote command.
utility
Summary
In subjective, ascending order of criticality.
getKind()
);ParameterMgr.cpp
);showMapping
);The text was updated successfully, but these errors were encountered: