The current unit tests cover around 84% of the framework, and will never be more than 95%, most of the untested lines being error handling in very specific/hardly reproducible cases.
However, there are still some services that are not tested at all, being:
XMPP utility client and XMPP shell interface:
this is mainly due to the lack of an XMPP server in the test environment
it could be possible to install prosody or ejabberd to implement tests
MQTT service and MQTT EventAdmin bridge
an MQTT server is available during tests, as MQTT Remote Services are tested
if it not used widely, the MQTT service could be removed as it is not used internally and it seems better to use paho-mqtt directly
The coverage of some unit tests doesn't seem to be taken into account when using a secondary Python process (e.g the shell console).
This issue should be investigated in the same time.
The current unit tests cover around 84% of the framework, and will never be more than 95%, most of the untested lines being error handling in very specific/hardly reproducible cases.
However, there are still some services that are not tested at all, being:
prosody
orejabberd
to implement testspaho-mqtt
directlyThe coverage of some unit tests doesn't seem to be taken into account when using a secondary Python process (e.g the shell console). This issue should be investigated in the same time.