Coverage report:
80%
hide covered
Files
Functions
Classes
coverage.py v7.14.1
, created at 2026-06-11 15:32 +0000
File
class
statements
missing
excluded
coverage
clients
/
__init__.py
HermesAlreadyNotifiedException
0
0
0
100%
clients
/
__init__.py
HermesDatamodelUpdatePurgeError
0
0
0
100%
clients
/
__init__.py
HermesClientHandlerError
9
1
0
89%
clients
/
__init__.py
HermesClientCache
14
0
0
100%
clients
/
__init__.py
GenericClient
792
157
0
80%
clients
/
__init__.py
(no class)
81
0
0
100%
clients
/
datamodel.py
InvalidDataError
0
0
0
100%
clients
/
datamodel.py
MissingForeignkeyDatatypeError
0
0
0
100%
clients
/
datamodel.py
Datamodel
364
30
1
92%
clients
/
datamodel.py
(no class)
49
0
0
100%
clients
/
errorqueue.py
HermesInvalidErrorQueueJSONError
0
0
0
100%
clients
/
errorqueue.py
ErrorQueue
307
11
0
96%
clients
/
errorqueue.py
(no class)
30
0
0
100%
lib
/
config
/
__init__.py
HermesConfigError
0
0
0
100%
lib
/
config
/
__init__.py
HermesInvalidAppname
0
0
0
100%
lib
/
config
/
__init__.py
HermesInvalidConfigSchemaKey
0
0
0
100%
lib
/
config
/
__init__.py
HermesPluginNotFoundError
0
0
0
100%
lib
/
config
/
__init__.py
HermesPluginError
0
0
0
100%
lib
/
config
/
__init__.py
HermesPluginClassNotFoundError
0
0
0
100%
lib
/
config
/
__init__.py
YAMLUniqueKeyCSafeLoader
7
0
0
100%
lib
/
config
/
__init__.py
HermesConfig
137
19
0
86%
lib
/
config
/
__init__.py
(no class)
44
0
0
100%
lib
/
datamodel
/
dataobject.py
HermesMergingConflictError
0
0
0
100%
lib
/
datamodel
/
dataobject.py
DataObject
122
3
0
98%
lib
/
datamodel
/
dataobject.py
(no class)
48
0
0
100%
lib
/
datamodel
/
dataobjectlist.py
DataObjectList
118
1
0
99%
lib
/
datamodel
/
dataobjectlist.py
(no class)
36
0
0
100%
lib
/
datamodel
/
dataschema.py
HermesInvalidDataschemaError
0
0
0
100%
lib
/
datamodel
/
dataschema.py
HermesInvalidForeignkeysError
0
0
0
100%
lib
/
datamodel
/
dataschema.py
Dataschema
118
6
0
95%
lib
/
datamodel
/
dataschema.py
(no class)
22
0
0
100%
lib
/
datamodel
/
datasource.py
Datasource
47
14
0
70%
lib
/
datamodel
/
datasource.py
(no class)
29
0
0
100%
lib
/
datamodel
/
diffobject.py
DiffObject
28
0
0
100%
lib
/
datamodel
/
diffobject.py
(no class)
16
0
0
100%
lib
/
datamodel
/
event.py
Event
71
6
0
92%
lib
/
datamodel
/
event.py
(no class)
16
0
0
100%
lib
/
datamodel
/
foreignkey.py
HermesCircularForeignkeysRefsError
0
0
0
100%
lib
/
datamodel
/
foreignkey.py
ForeignKey
26
0
0
100%
lib
/
datamodel
/
foreignkey.py
(no class)
11
0
3
100%
lib
/
datamodel
/
jinja.py
HermesNotAJinjaExpression
0
0
0
100%
lib
/
datamodel
/
jinja.py
HermesDataModelAttrsmappingError
0
0
0
100%
lib
/
datamodel
/
jinja.py
HermesTooManyJinjaVarsError
0
0
0
100%
lib
/
datamodel
/
jinja.py
HermesUnknownVarsInJinjaTemplateError
0
0
0
100%
lib
/
datamodel
/
jinja.py
HermesCodeGenerator
4
1
0
75%
lib
/
datamodel
/
jinja.py
HermesNativeEnvironment
0
0
0
100%
lib
/
datamodel
/
jinja.py
HermesNativeTemplate
0
0
0
100%
lib
/
datamodel
/
jinja.py
Jinja
39
0
0
100%
lib
/
datamodel
/
jinja.py
(no class)
41
1
0
98%
lib
/
datamodel
/
serialization.py
HermesInvalidVersionError
0
0
0
100%
lib
/
datamodel
/
serialization.py
HermesInvalidJSONError
0
0
0
100%
lib
/
datamodel
/
serialization.py
HermesInvalidJSONDataError
0
0
0
100%
lib
/
datamodel
/
serialization.py
HermesInvalidJSONDataattrTypeError
0
0
0
100%
lib
/
datamodel
/
serialization.py
HermesInvalidCacheDirError
0
0
0
100%
lib
/
datamodel
/
serialization.py
HermesUnspecifiedCacheFilename
0
0
0
100%
lib
/
datamodel
/
serialization.py
HermesLocalCacheNotSetupError
0
0
0
100%
lib
/
datamodel
/
serialization.py
JSONEncoder
10
1
0
90%
lib
/
datamodel
/
serialization.py
JSONSerializable
72
28
0
61%
lib
/
datamodel
/
serialization.py
LocalCache
90
10
0
89%
lib
/
datamodel
/
serialization.py
(no class)
61
0
3
100%
lib
/
plugins.py
FailedToSendEventError
0
0
0
100%
lib
/
plugins.py
AbstractAttributePlugin
2
1
0
50%
lib
/
plugins.py
AbstractDataSourcePlugin
17
10
0
41%
lib
/
plugins.py
AbstractMessageBusProducerPlugin
19
10
0
47%
lib
/
plugins.py
AbstractMessageBusConsumerPlugin
18
11
0
39%
lib
/
plugins.py
(no class)
36
0
0
100%
lib
/
utils
/
logging.py
(no class)
10
0
12
100%
lib
/
utils
/
mail.py
Attachment
3
2
0
33%
lib
/
utils
/
mail.py
Email
44
23
0
48%
lib
/
utils
/
mail.py
(no class)
24
0
0
100%
lib
/
utils
/
singleton.py
SingleInstanceException
0
0
0
100%
lib
/
utils
/
singleton.py
SingleInstance
40
23
0
42%
lib
/
utils
/
singleton.py
(no class)
10
0
0
100%
lib
/
utils
/
socket.py
InvalidSocketMessageError
0
0
0
100%
lib
/
utils
/
socket.py
SocketNotFoundError
0
0
0
100%
lib
/
utils
/
socket.py
SystemdSocketError
0
0
0
100%
lib
/
utils
/
socket.py
SocketParsingError
0
0
0
100%
lib
/
utils
/
socket.py
SocketParsingMessage
0
0
0
100%
lib
/
utils
/
socket.py
InvalidOwnerError
0
0
0
100%
lib
/
utils
/
socket.py
InvalidGroupError
0
0
0
100%
lib
/
utils
/
socket.py
SocketArgumentParser
5
5
0
0%
lib
/
utils
/
socket.py
SocketMessageToServer
21
21
0
0%
lib
/
utils
/
socket.py
SocketMessageToClient
22
22
0
0%
lib
/
utils
/
socket.py
SockServer
88
50
0
43%
lib
/
utils
/
socket.py
SockClient
13
13
0
0%
lib
/
utils
/
socket.py
(no class)
38
0
0
100%
lib
/
version.py
(no class)
4
0
0
100%
plugins
/
attributes
/
crypto_RSA_OAEP
/
crypto_RSA_OAEP.py
Attribute_Crypto_RSA_OAEP_Plugin
26
20
0
23%
plugins
/
attributes
/
crypto_RSA_OAEP
/
crypto_RSA_OAEP.py
(no class)
16
0
0
100%
plugins
/
attributes
/
ldapPasswordHash
/
ldapPasswordHash.py
InvalidLdapPasswordHashType
0
0
0
100%
plugins
/
attributes
/
ldapPasswordHash
/
ldapPasswordHash.py
LdapPasswordHashPlugin
19
17
0
11%
plugins
/
attributes
/
ldapPasswordHash
/
ldapPasswordHash.py
(no class)
9
0
0
100%
plugins
/
clients
/
usersgroups_null
/
usersgroups_null.py
NullClient
22
20
0
9%
plugins
/
clients
/
usersgroups_null
/
usersgroups_null.py
(no class)
27
0
0
100%
plugins
/
datasources
/
ldap
/
ldap.py
DatasourceLdap
79
75
3
5%
plugins
/
datasources
/
ldap
/
ldap.py
(no class)
23
0
2
100%
plugins
/
datasources
/
oracle
/
oracle.py
DatasourceOracle
29
26
0
10%
plugins
/
datasources
/
oracle
/
oracle.py
(no class)
13
0
0
100%
plugins
/
datasources
/
sqlite
/
sqlite.py
DatasourceSqlite
26
10
0
62%
plugins
/
datasources
/
sqlite
/
sqlite.py
(no class)
18
0
0
100%
plugins
/
messagebus_consumers
/
sqlite
/
sqlite.py
SqliteConsumerPlugin
78
29
0
63%
plugins
/
messagebus_consumers
/
sqlite
/
sqlite.py
(no class)
19
0
0
100%
plugins
/
messagebus_producers
/
sqlite
/
sqlite.py
SqliteProducerPlugin
25
0
0
100%
plugins
/
messagebus_producers
/
sqlite
/
sqlite.py
(no class)
14
0
0
100%
server
/
datamodel.py
HermesDataModelMissingPrimarykeyError
0
0
0
100%
server
/
datamodel.py
HermesInvalidPrimarykeyTypeError
0
0
0
100%
server
/
datamodel.py
HermesDataModelInvalidQueryTypeError
0
0
0
100%
server
/
datamodel.py
DatamodelFragment
97
26
0
73%
server
/
datamodel.py
Datamodel
174
42
0
76%
server
/
datamodel.py
(no class)
31
0
2
100%
server
/
hermesserver.py
HermesServerCache
8
0
0
100%
server
/
hermesserver.py
HermesServer
311
112
0
64%
server
/
hermesserver.py
(no class)
41
0
0
100%
Total
4378
857
26
80%
No items found using the specified filter.