Closed sphuber closed 1 year ago
Base: 90.73% // Head: 90.74% // Increases project coverage by +0.01%
:tada:
Coverage data is based on head (
caf0bce
) compared to base (ed1b6cb
). Patch coverage: 100.00% of modified lines in pull request are covered.
:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.
If a
valid_type
is set on aPortNamespace
it is automatically made dynamic. If a namespace is dynamic, it means that it should accept any nested namespace, however deeply nested. However, the leafs of the inputs should still respect thevalid_type
. This was not the case though. As soon as a port namespace was made dynamic, any nested input namespace would be expected, regardless of the types of the leaf values.The
PortNamespace.validate_dynamic_ports
is made recursive. If a port value is a dictionary, it recursively calls itself to validate its nested values, ultimately making sure that leaf values have a valid type if one is specified for the namespace.